Автор: Пользователь скрыл имя, 27 Февраля 2013 в 12:49, дипломная работа
Информатика пәні негізінен мынадай тақырыптарды қамтиды:
• «Алгоритм», «программа» ұғымы.
• Алгоритмдерді қарапайым тілде, блок-схема түрінде жазу.
• Паскаль тілінде мәліметтерді сипаттау, программалар құру, оларды компьютерде орындау.
• Әр түрлі операторларды жазу, функциялар мен процедураларды пайдалану жолдары т.б.
Қазіргі кезде Паскаль тілі кез-келген күрделі есептерді шығара алатын, кең таралған стандартты оқу тіліне айналды. Сондықтан жалпы білім беретін мектептерде программалауды оқытуда осы Паскаль тілі таңдалып алынған.Программалау тілінің бірі – Паскальдің негізін салушы Никлас Вирттың тұжырымдауынша, программалау ісі қалай болған күнде де математикасыз өмір сүре алмайды.
Кіріспе
1. Орта мектепте Паскаль программалау тілін оқытудың ғылыми әдістемелік негіздері
1.1. Орта мектептегі программалау тілдерін оқыту әдістерінің жалпы мәселелері
1.2. Орта мектепте программалау тілін оқытудың орны
1.3. Орта мектеп оқушыларын компьютерде программалау дағдысына баулу.
2. Орта мектепте Паскаль программалау тілін оқытуда жаңа педагогикалық технологиялар
2.1 Программалау тілдерін оқытудың модульдік технологиясы
2.2 Программалау тілдерін оқытуда дидактикалық материалдар
2.3 Паскаль программалау тілін оқытуда электрондық оқулық
Қорытынды
Пайдаланылған әдебиеттер
Қосымшалар
a, b: integer; a, b: integer;
r: integer;
s: integer;
r:=adivb; s:=a*b;
2) Var
a: integer; b, c: real
c:=a+b
Тармақталу операторларының үш түрі бар (қосымшадан қараңыз).
Тармақталу алгоритмдерді программалауда блок-схемаларды қолдану міндетті деп есептейміз. Себебі программа құрғанда блок-схемалар көп көмегін тигізеді. Мысалы, ах2+вх+с=0 квадрат теңдеуін шешу программасын блок-схеманының көмегімен құрып көрейік. Бұл есепті шешу үшін математикалық білім керек және 8-сыныптағы Алгебра пәнінде қарастырған материалды еске түсіріп, оның маңыздылығын сезінуге баулау тәрбиелеу оқытудың бір көрінісі.
Сызба 1 Квадрат теңдеуін шешу блок-схемасы
ProgramKvadrattendey;
Var a, b, c, D: integer;
X, X1, X2: real;
Begin
Writeln (‘a, b, c-engiz’); {нақты айнымалыларды шығару}
Begin
Writeln (‘a, b, c-engiz’);
Readln (a, b, c);
D:=sqr(b)-4*a*c;{Формуланы жазу }
Writeln(‘D=’, D);
If D>0 then
Begin
X1:= (-b-sqrt(D))/2*a;
X2:= (-b+sqrt(D))/2*a;
Writeln (‘X1=’, X1:5:2, ‘X2=’, X2:5:2);
End else
If D<0 then
Begin
Writeln (‘Теңдеудің бір түбірі бар’);
X:= -b/2*a;
Writeln (‘X=’, X:5:2); {5 орынды санды 2 орынға дөңгелектеу}
End else
Writeln (‘Теңдеудің түбіріжоқ’);
Readln;
End.
Есепті таңдау case операторын қолданып шешу тиімді әдістердің бірі болып табылады. Себебі мүмкін болатын жағдай екеу емес, одан да көп бола береді. Мысалы, жыл мезгілдерін анықтайтын программа құрайық .
program Мезгіл; {Кез келген атты жазуға болады}
uses CRT;
var m:Integer; {m- бүтін типті екенін көрсетеді}
BEGIN
clrscr;
writeln('Айдың аттарын енгіз:'
readln(m);
case m of
1,2,12: writeln('Қыс');
3,4,5: writeln('Көктем');
6,7,8: writeln('Жаз');
9,10,11: writeln('Күз');
end;
readln;
END.[7].
Мынандай бір қызықты есепті енгізіп отырмыз:
Қазақша жыл қайыру алгоритміне программа құрып көрейік. Ол үшін ең алдымен төмендегідей белгілеулерді енгіземіз: Мк=13+(к-1)*12, мұндағы к=1, 2, 3, ..., Мк-мүшел сандар. Қазақ жыл қайыру күнтізбесі бойынша мүшел есебін дұрыс және тез шешу үшін мүшел жылдарының кестелік рет санын және жыл жануарлары аттарын жатқа білу шарт.
Г- қазіргі (григориандық) жыл саны, М- мүшел саны.
1- қадам: А=Г+9 2- қадам: А=12* n+к, к=0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11
3- қадам: Мүшел бойынша қай жыл екенін анықтау.
Ескерту: Егер қалдық к=0 болса, онда к= «доңыз жылы» деп аталады.
Мүшел алгоритмнің Паскаль тіліндегі программасы:
PROGRAM GYL;
VAR А, G, к: integer;
BEGIN
Write (‘G жылды енгіз’); {Туған жылды енгізу}
read(G); А: =G+9; {оған 9 санын қосамыз}
k:=Amod12; case k of {шыққан нәтижені 12-ге бөлу}
0:write (A’= «доңыз жылы»’); {0-жыл- доңыз жылы }
1:write (A’= «тышқан жылы»’); {1-жыл- тышқан жылы }
2:write (A’= «сиыр жылы»’); {2-жыл- сиыр жылы }
3:write (A’= «барыс жылы»’); {3-жыл- ,барыс жылы }
4^ write (A’= «қоян жылы»’); {4-жыл- қоян жылы }
5: write (A’= «ұлу жылы»’); {5-жыл- ұлу жылы }
6: write (A’= «жылан жылы»’); {6-жыл- жылан жылы }
7: write (A’= «жылқы жылы»’); {7-жыл- жылқы жылы }
8: write (A’= «қой жылы»’); {8-жыл- қой жылы }
9: write (A’= «мешін жылы»’); {9-жыл- мешін жылы }
10: write (A’= «тауық жылы»’); {10-жыл- тауық жылы }
11: write (A’= «ит жылы»’); end; {11-жыл- ит жылы }
end.
Циклдік құрылымды алгоритмдерді программалау
Көп жағдайда аргументтердің
әртүрлі мәні бойынша алгоритмнің
белгілі бір бөліктерін бірнеше
рет қайталауға тура келеді. Лсындай
процестерді ұйымдастыру үшін циклдік
құрылымды алгоритмдер –
Циклдік операторлардың үш түрі бар (қосымшадағы материалдан қараңыз). Параметрлі қайталау командасының жазылу форматы:
FOR P:= NV TO KV DO A немесе
FOR P:= NV DOWNTO KV
DO А, мұндағы Р-циклдік парметрі,
Бір есепті циклдік оператордың қайсысымен де шығаруға болады.
Мысалы, есептеңдер: у=х2, мұндағы х=2, 4, 6, 8, 10.
1) Цикл -әзір (While) үлгісімен құрылған программасы:
Program cikl1;
Var X,Y:Integer; {x,y - бүтін типті екенін көрсетеді}
Begin
X:=2;
While x<=10 Do{10-ға дейіні}
Begin
Y:=Sqr(X);{х-тің квадрат түбірі}
Writeln(‘X=’,X:3, ‘Y=’,Y:5);
X:=X+2;
End;
End.
2)Цикл – Repeat үлгісімен құрылған программасы:
Program cikl3;
Var x,y:Integer; {x,y - бүтін типті екенін көрсетеді}
Begin
X:=2;
Repeat
Y:=Sqr(x);
Writeln(x:3,y:5);
X:=x+2;
Until x>10;{10-нан артық}
End.
For – параметрлі қайталау
оператордың жазылу түрлерін
төмендегі кестеден көріп,
Оператордың жазылуы |
Нәтижесі |
For k:=-1 to 6 Do Write (x, ‘,’) For k:=3 to 3 Do Write (x, ‘,’) For k:=1 to 9 Do Write (x, ‘,’) For k:=-1 to -6 Do Write (x, ‘,’) For k:=10 downto 6 Do Write (x, ‘,’) For k:=0 downto -1 Do Write (x, ‘,’) For k:=1 downto 16 Do Write (x, ‘,’) |
-1, 0, 1, 2, 3, 4, 5, 6 3 1, 2, ...,9 цикл орындалмайды 10, 9, 8, 7, 6 0, -1 цикл орындалмайды |
Бір және екіөлшемді жиымдар
Жиымдар – бір атаумен
белгіленген бір типті
Программада жиымға атау беріледі, ол арқылы жиымның элементін пайдалануға болады. Жиымның элементтерін құрайтын айнымалылар индексті айнымалылар деп аталады. «Жиым элементтері» болатын индекстер константа (тұрақты), айнымалы немесе өрнек түрінде берілу мүмкін.
Жиымға төмендегі қасиеттер тән:
1) Жиымның әр компоненті айқын түрде белгілене алады және оған тікелейқатынас бар;
2) Жиымның компоненттерінің
саны онысипаттаған
Егер жиымның әрбір
элементіне реттік нөмір
Мысал. Жиым элементтерінің қосындысын есептейтін программа.
Алдымен 10 нақты сан енгізіліп, олар жиым элементтері ретінде сақталады, сонан кейін енгізілген сандардың қосындысы есептеліп нәтиже ретінде шығарылады.
Programm PRIMER;
Var
M: Array[1..10] of real; {жиымды сипаттау}
I: integer;{ For операторының параметрі}
S: real;{элементтер қосындысы}
Begin
For i:=1 to 10 do{Жиымды толтыру}
Begin
Write(‘Жиымның ’, I, ‘-элементін енгізіңдер:’);
Readln(m[i]);
End;
S:=0;{Қосынды санауышын тазалау}
For i:=1 to 10 do s:=s+m[i];{Қосынды есептеу}
Write(‘Жиым элементтерінің қосындысы=’, s);
Readln;
End.
Матрицалар жиымдардың ішінде екіөлшемді жиымдар, оларды кейде тікбұрышты (квадрат) кестелер немесе матрицалар деп атайды. Матрица элементері екі индекс арқылы сипатталады. Мысалы, мұндағы бірінші индекс –жолдың нөмірі, екіншісі – бағананың нөмірі. а1,3 – «а бір бүтін оннан үш» емес «а бір де үш» деп оқылады. Паскаль тіліндегі программада сәйкесінше а[1, 3] түріндегі құрылым қолданылады.
Матрицаларды өңдеу үшін параметрлі қабаттасқан циклдерді қолданған ыңғайлы. Төмендегі 4*5 матрицасын пернетақтадан бүтін сандармен толтыруға арналған программа фрагменті келтірілген.
For i:=1 to 4 do
For j:=1 to 5 do
Begin
Write(I, ‘’,j, ’ ’);
Readln a[I, j];
End;
Turbo Pascal жүйесінде өлшемдері бірдей жиымдар үшін жиымды жиымға меншіктеу операциясын қолдануға болады.Мысалы, екі жиым төмендегідей сипатталса:
Var
A, B: array[1..50, 1..60] of real;
Онда А:=В; меншіктеу операциясын жазуға болады.
Графиктік объектілерді программалау
Графикалық режімде экранның нүктесін түрлі түске бояп, сол түстер арқылы сызықтар, мәтіндер және әр түрлі бейнелер тұрғызатын мүмкіндіктер бар. Графкалық программалау процесін тиімдірек ету мақсатында Borland International фирмасы GRAPH арнайы программалар кітапханасын жасап шығарған болатын, онда қазіргі кездегі мониторлардың барлық типтерімен жұмыс істей отырып, экранда түрлі мөлшердегі қаріптер шығара алатын драйверлер жиыны бар.
Экранда мәлімет шығаруды аппараттық жағынан сүйемелдеу екі модуль – бейнеадаптер және бейнемонитор арқылы қамтамасыз етіледі.
Жалпы бейнеадаптер екі бөліктен – электрондық сәулелік түтікше контроллерінен (CRT контроллері) және бейнебуферден тұрады. Жетілдірілген қазіргі кездегі адаптерлер бұлардан басқа графика контроллерімен де жабдықталады.
CRT (Cathod ray tube – электронды-сәулелік
трубка) жиі қолданылатын модульдің
бірі. CRT модулі – мәліметтерді
экранға шығару, пернетақтадан енгізу,
сонымен бірге дыбыстық
CRT модулі арқылы экранмен
жұмыс жасағанда бүкіл экран
жеке жолдарға бөлінеді. Ал әр
жол жеке позицияларға
Нүкте салу операторы. Экранның кез келген жеріне нүкте салуға болады, GRAPH модулінде нүкте PutPixel процедурасы арқылы салынады, оның пішімі PutPixel(X, Y: integer; color: word); мұндағы X,Y-нүкте координаталары, оның түсін анықтайды. Экран бетіндегі бұрын салынған нүктенің орнын анықтау үшін GetPixel(X, Y: integer):word; функциясы қолданылады.
Түзу сызық салу процедурасы экранда екі ұшының координаталары бойынша кесінді сызу ісін атқарады. Оның пішімі Line(X1, Y1, X2, Y2: integer); мұнда ағымдағы түс бойынша координаталары X1, Y1 нүктесінен X2, Y2 нүктесіне дейін кесінді сызылады.
Бастапқы нүкте көрсетілмесе, онда Lineto(X, Y: integer); - меңзер тұрған орыннан бастап координаталары X, Y болатын нүктеге дейін түзу сызық сызатын процедураны қолдануға болады.
LineRel(DX, DY: integer); - ағымдағы
нүктеден қашықтығы
SetLineStyle(T, P, Th: word); сызық қалыңдығы мен стилін орнату.
Көпбұрыш сызу процедуралары көпбұрыштардың бірнеше түрін салу мүмкінігін береді, олардың түсі, стилі келісім бойынша орнатылады.
Rectangle (x1, y1, x2, y2); - сол жақ жоғарғы (х1, у1) және оң жақ төменгі төбелерінің координаталары (х2, у2) бойынша төртбұрыш сызады.
For i:=1 to 100 do
Begin
SetColor(Green); Rectangle(200, Random(300), 250, 300);
Delay(50);
ClearDevice
End.
Bar (x1, y1, x2, y2); - мұнда ағымдағы түспен іші боялған тіктөртбұрыш сызылады.
SetFillStyle (Pattern, Color: word) – объектінің ішін бояйды.
Floodfill(x, y: integer; Bor: word) – таңдалған стиль бойынша тұйық фигураның ішін бояйды.
Мысал: Әр түрлі стильмен сызылған төртбұрыштар сызу керек.
Информация о работе Орта мектепте паскаль программалау тілін оқытуды жетілдіру жолдары