Презентация по информатике на тему ''Программирование на языке Pascal'' (9 класс, казахский язык)
Программа - это набор команд (инструкций), которые управляют работой компьютера.
Инструкции записываются в виде строк в редакторе программной среды Pascal (например Turbo Pascal) и являются законченными командами. Несколько команд в одной строке должны быть разделены точкой с запятой.
Команды могут заставить компьютер:
- получить от пользователя какие то данные. (Ввод)
- отобразить данные на экране, записать в файл, распечатать на принтере, передать в сеть. (Вывод)
- Выполнить какие то действия, например: арифметические, алгебраические, логические. (Вычислительные выражения).
- Перескочить в программе с одного места на другое или выполнить какой то блок команд многократно (Ветвление и цикл).Презентация
Паскаль тілінде
программалау
1
1. Кіріспе
2. Тармақталу
3. Күрделі шарттар
4. Циклдер
5. Шартты циклдер
6. Таңдау операторы
7. Графика
8. Функциялардың графигі
9. Процедуралар
10. Рекурсия
11. Анимация
12. Кездейсоқ сандар
13. Функциялар
2
Паскаль тілінде
программалау
Тақырып 1. Кіріспе
Алгоритм
Алгоритм – атқарушы орындайтын амалдардың
тиянақты жоспары.
3
Алгоритм қасиеттері
• дискреттілік: жекелеген қадамдардан(командалардан)
•
тұрады
айқындылық: атқарушыға түсінікті болатын
командалардан тұруы керек
• белгілілік: бастапқы деректері бірдей болған жағдайда
нәтижесі де бірдей болады
• нәтижелік: әрекеттердің шектеулі санынан кейін белгілі
бір уақытта қорытынды нәтиже алуымыз керек
• жалпылық: алгоритм әр түрлі алғашқы мәліметтер үшін
әр түрлі нәтижелер беруі тиіс
• дұрыстылық: алғашқы мәліметтер әр түрлі
болғандығына қарамастан барлық жағдайда дұрыс
нәтиже береді
Программа
4
Программа дегеніміз
• қандай да бір программалау тілінде
жазылған алгоритм
• компьютерге қажетті командалардың
жиынтығы
Команда – компьютер орындауға міндетті
әрекеттің өрнектелуі.
• алғашқы мәліметтерді қайдан алу керек?
• олармен қандай амалдар орындау керек?
Программалау тілдері
• Машинаға бейімделген (төменгі деңгейлі)
әрбір команда процессордың бір командасына
сәйкес келеді (ассемблер)
5
• Жоғарғы деңгейлі тілдер – кәдімгі табиғи
тілге(ағылшын тіліне) ұқсайды, адамның түсінуіне
оңай, бір ғана компьютерге тәуелді болмайды.
• Жаңадан үйренушілерге: Бейсик, ЛОГО,
Паскаль
• Кәсіби: Си, Фортран, Паскаль
• Жасанды интеллект тапсырмалары үшін:
• Интернет үшін: JavaScript, Java, Perl, PHP,
Пролог, ЛИСП
ASP
Паскаль тілі
6
1970 – Никлаус Вирт (Швейцария)
• студенттерді оқытуға арналған тіл
• «жоғарыдан төменге қарай» программаларын
жасау
Есеп
Бағыныңқы есеп1
Бағыныңқы есеп2
Бағыныңқы есеп3
1.1
1.2
1.3
2.1
2.2
2.3
3.1
3.2
3.3
• берілгендердің әр түрлі құрылымдары(массивтер,
құрылымдар, жиымдар)
7
Программа қандай бөліктерден тұрады?
program <программаның аты>;
program <программаның аты>;
const …;{тұрақтылар}
const …;{тұрақтылар}
var …; {айнымалылар}
var …; {айнымалылар}
{ процедуралар мен функциялар }
{ процедуралар мен функциялар }
begin
begin
… {негізгі программа}
… {негізгі программа}
end.
end.
фигуралық жақшаның ішінде
фигуралық жақшаның ішінде
орналасқан түсініктемелер
орналасқан түсініктемелер
программамен өңделмейді
программамен өңделмейді
Программа қандай бөліктерден тұрады?
8
Тұрақты – өз атауы болатын, өзгермейтін шама, .
Айнымалы – өз атауы (жад ұяшығы)болатын, өзгеретін
шама.
Процедура – кейбір әрекеттерді сипаттайтын қосалқы
алгоритм (мысалға шеңберді салу).
Функция – есептеулерді орындайтын қосалқы алгоритм
(квадрат түбірді табу, sin).
9
Программалар, тұрақтылар, айнымалылар атауы
Атауларды сипаттағанда
• латын әріптерін (AZ)
Бас әріптер мен кіші әріптердің арасында айырмашылық болмайды
Бас әріптер мен кіші әріптердің арасында айырмашылық болмайды
• сандарды
Атаулар санмен басталмауы керек
Атаулар санмен басталмауы керек
• астын сызу белгісін _
қолдануға болады
Атауларды сипаттағанда
• орыс, қазақ әріптерін
• бос орындарды
• жақшаларды, +, =, !, ? белгілерін және т.б.
қолдануға болмайды
Қай атаулар дұрыс жазылған?
AXby R&B 4Wheel Вася “PesBarbos” TU154
[QuQu] _ABBA A+B
Тұрақтылар
const
const
i2 = 45; { бүтін сан }
i2 = 45; { бүтін сан }
pi = 3.14; { нақты сан }
pi = 3.14; { нақты сан }
10
бүтін және бөлшек бөліктері нүктемен
бүтін және бөлшек бөліктері нүктемен
qq = 'Вася'; { символдар қатары }
qq = 'Вася'; { символдар қатары }
орыс, қазақ әріптерін қолдануға болады!
орыс, қазақ әріптерін қолдануға болады!
ажыратылады
ажыратылады
L = True; { логикалық шама }
L = True; { логикалық шама }
екі мән қабылдай алады:
екі мән қабылдай алады:
• True (ақиқат, «иә»)
• True (ақиқат, «иә»)
• False (жалған, «жоқ»)
• False (жалған, «жоқ»)
11
Айнымалылар
Айнымалы – аты, типі және мәні болатын шама.
Айнымалының мәнін программаның жұмысы
кезінде өзгертіп отыруға болады.
Айнымалылардың типі:
• integer
• real
• char
• string
• boolean
{ бүтін }
{ нақты }
{ бір символ }
{ символдық тіркес }
{ логикалық }
Айнымалыларды сипаттау (жад бөлу):
var a, b: integer;
var a, b: integer;
Q: real;
Q: real;
s1, s2: string;
s1, s2: string;
Айнымалының мәнін қалай өзгертуге болады?
12
Оператор – жоғары деңгейлі программалау тілінің
командасы.
Меншіктеу операторы айнымалының мәнін өзгерту
үшін қолданылады.
a
?
5
Мысал:
program qq;
program qq;
var a, b: integer;
var a, b: integer;
begin
begin
a := 5;
a := 5;
b := a + 2;
b := a + 2;
a := (a + 2)*(b – 3);
a := (a + 2)*(b – 3);
end.
end.
5
b
?
7
5+2
a
28
5
7*4
Меншіктеу операторы
13
Жалпы құрылымы:
<айнымалы атауы> := <өрнек>;
<айнымалы атауы> := <өрнек>;
Арифметикалық өрнектің құрамында
• тұрақтылар
• айнымалы атаулары
• арифметикалық амалдар белгілері:
+ - * / div mod
көбейту
көбейту
бөлу
бөлу
• функцияларды шақыру
• жақшалар ( )
бүтінді
бүтінді
бүтінге бөлу
бүтінге бөлу
бөлуден
бөлуден
қалған
қалған
қалдық
қалдық
Қай операторлар дұрыс жазылмаған?
program qq;
program qq;
var a, b: integer;
var a, b: integer;
14
x, y: real;
x, y: real;
begin
begin
a := 5;
a := 5;
10 := x;
10 := x;
y := 7,8;
y := 7,8;
b := 2.5;
b := 2.5;
x := 2*(a + y);
x := 2*(a + y);
a := b + x;
a := b + x;
end.
end.
айнымалы атауы := белгісінің
айнымалы атауы := белгісінің
сол жағында болуы керек
сол жағында болуы керек
бүтін мен бөлшектің арасы
бүтін мен бөлшектің арасы
нүктемен ажыратылуы керек
нүктемен ажыратылуы керек
нақты мәнді бүтін
нақты мәнді бүтін
айнымалыға меншіктеуге
айнымалыға меншіктеуге
болмайды
болмайды
Амалдарды орындау тәртібі
15
• жақша ішіндегі өрнекті есептеу
• солдан оңға қарай көбейту, бөлу, div, mod
• солдан оңға қарай қосу және алу
2 3 5 4 1 7 8 6 9
x:=(a*a+5*c*c-d*(a+b))/((c+d)*(d-2*a));
x:=(a*a+5*c*c-d*(a+b))/((c+d)*(d-2*a));
z := (5*a*c+3*(c-d))/a*(b-c)/ b;
z := (5*a*c+3*(c-d))/a*(b-c)/ b;
dc
5
ac
)
x
a
2
)
bad
(
)2
a
5 2
c
(
ddc
)(
2 6 3 4 7 5 1 12 8 11 10 9
(3
ab
z
(
cb
)
16
Екі санды қосу
Есеп. Екі бүтін санды қосып, қосындысын
экранда шығару. Шығарылуы:
program qq;
program qq;
var a, b, c: integer;
var a, b, c: integer;
begin
begin
read ( a, b );
read ( a, b );
c := a + b;
c := a + b;
writeln ( c );
writeln ( c );
Readln;
Readln;
end.
end.
Енгізу операторы
17
read ( a ); { а айнымалысының мәнін
read ( a, b ); { а және b
енгізу}
айнымалыларының мәндерін
енгізу}
Екі санды қалай енгізуге болады?
бос орын арқылы:
25 30
a25
b30
Enter арқылы:
25
30
a25
b30
Шығару операторы
18
write ( a ); { a айнымалысының
мәнін шығару}
writeln ( a ); {a айнымалысының мәнін
шығарып,келесі жолға
көшу}
writeln ( ‘Салем!' ); { мәтінді шығару}
writeln ( ‘Жауап: ', c ); { мәтінді
және c айнымалысының мәнін
шығару}
writeln ( a, '+', b, '=', c );
Шығару форматтары
19
барлық
барлық
program qq;
program qq;
var i: integer;
var i: integer;
x: real;
x: real;
begin
begin
i := 15;
i := 15;
саны
writeln ( '>', i, '<' );
саны
writeln ( '>', i, '<' );
writeln ( '>', i:5, '<' );
writeln ( '>', i:5, '<' );
x := 12.345678;
x := 12.345678;
writeln ( '>', x, '<' );
writeln ( '>', x, '<' );
writeln ( '>', x:10, '<' );
writeln ( '>', x:10, '<' );
writeln ( '>', x:7:2, '<' );
writeln ( '>', x:7:2, '<' );
end.
end.
символдар
символдар
бөлшек бөлігіндегі
бөлшек бөлігіндегі
символдар саны
символдар саны
>15<
>15<
> 15<
> 15<
>1.234568E+001<
>1.234568E+001<
> 1.23E+001<
> 1.23E+001<
> 12.35<
> 12.35<
барлық
барлық
символдар
символдар
саны
саны
20
Толық шығарылуы
program qq;
program qq;
var a, b, c: integer;
var a, b, c: integer;
begin
begin
writeln(‘Екі бүтін сан енгізіңіз');
writeln(‘Екі бүтін сан енгізіңіз');
read ( a, b );
read ( a, b );
c := a + b;
c := a + b;
writeln ( a, '+', b, '=', c );
writeln ( a, '+', b, '=', c );
end.
end.
Протокол:
Екі бүтін сан енгізіңіз
25 30
25+30=55
бұны программа жазушы өзі
бұны программа жазушы өзі
бұны компьютер шығарады
бұны компьютер шығарады
енгізеді
енгізеді
Сызықтық алгоритмның блоксхемасы
21
басы
енгізу a, b
«басы» блогі
«басы» блогі
«енгізу» блогі
«енгізу» блогі
c := a + b;
«процесс» блогі
«процесс» блогі
шығару c
«шығару» блогі
«шығару» блогі
соңы
«соңы» блогі
«соңы» блогі
Тапсырмалар
"4": Үш сан енгізіп,олардың қосындысын және
22
көбейтіндісін табу.
Мысал:
Үш сан енгіз:
4 5 7
4+5+7=16
4*5*7=140
"5": Үш сан енгізіп, олардың қосындысын,
көбейтіндісін және арифметикалық ортасын
табу.
Мысал:
Үш сан енгіз:
4 5 7
4+5+7=16
4*5*7=140
(4+5+7)/3=5.33
23
Паскаль тілінде
программалау
Тақырып 2. Тармақталу
Тармақталу алгоритмдері
24
Есеп. Екі бүтін сан енгізіп,экранға олардың үлкенін
шығару.
Шығару амалы: бірінші сан екінші саннан үлкен болса,
біріншісін, ал егер кіші болса екіншісін экранға шығару.
Ерекшелігі: атқарушының әрекеті кейбір шарттардың
орындалуына байланысты болады (егер …әйтпесе …).
Қадамдардың тізбектеп орындалуы кейбір шарттарға
байланысты болатын алгоритмдерді тармақталу
алгоритмдері деп атайды.
Қадамдардың тізбектеп орындалуы кейбір шарттарға байланысты болатын алгоритмдерді тармақталу алгоритмдері деп атайды.
Нұсқа 1. Блоксхема
25
басы
енгізу a,b
«таңдау» блогі
«таңдау» блогі
иә
a > b?
жоқ
Тармақталудың
Тармақталудың
толымды түрі
толымды түрі
max:= a;
max:= b;
шығару max
соңы
?
Егер a = b?
Нұсқа 1. Программа
26
program qq;
var a, b, max: integer;
begin
writeln(‘Екі бүтін сан енгіз');
read ( a, b );
if a > b then begin
end
else begin
max := b;
max := b;
end;
writeln (‘Екі санның үлкені', max);
end.
max := a;
max := a;
шартты
шартты
оператордың
оператордың
толымды түрі
толымды түрі
Шартты оператор
27
if <шарт> then begin
if <шарт> then begin
{егер шарт орындалса, не істеу керек}
{егер шарт орындалса, не істеу керек}
end
end
else begin
else begin
{егер шарт орындалмаса, не істеу керек}
{егер шарт орындалмаса, не істеу керек}
end;
end;
Ерекшеліктері:
• else-тің алдында нүктелі үтір болмауы керек
• екінші бөліктің (else …) болмауы да мүмкін
(толымсыз түрі)
• егер блокта бір ғана оператор болса, begin мен
end сөздерін жазбауға да болады
Қай жері дұрыс емес?
28
if a > b then begin
if a > b then begin
a := b;
a := b;
end
end
begin
else
else
b := a;
b := a;
end;
end;
if a > b then begin
if a > b then begin
a := b;
a := b;
end
end
begin
else b > a begin
else b > a begin
b := a;
b := a;
end;
end;
if a > b then begin
if a > b then begin
a := b;
end
a := b;
else begin
else begin
b := a;
b := a;
end;
end;
if a > b then begin
if a > b then begin
a := b;
a := b;
end;
end
end;
else begin
else begin
b := a;
b := a;
end;
end;
Нұсқа 2. Блоксхема
29
басы
енгізу a,b
max:= a;
иә
b > a?
жоқ
max:= b;
шығару max
соңы
тармақталудың
тармақталудың
толымсыз түрі
толымсыз түрі
30
Нұсқа 2. Программа
program qq;
var a, b, max: integer;
begin
writeln(‘Екі бүтін сан енгіз');
read ( a, b );
max := a;
if b > a then
max := b;
writeln (‘Екі санның үлкені',
max);
end.
оператордың
оператордың
толымсыз түрі
толымсыз түрі
шартты
шартты
31
Нұсқа 2Б. Программа
program qq;
var a, b, max: integer;
begin
writeln('Екі бүтін сан енгіз');
read ( a, b );
max := b;
if ??? then
a > b
a > b
???
max := a;
max := a;
writeln ('Екі санның үлкені',
max);
end.