Тармақталу алгоритмін орындайтын программаны құру




Презентация қосу
Тексерген: Жаксыгулова Д.Д 1
Қазақстан Республикасы
Білім және Ғылым министрлігі
Шәкәрім атындағы Семей мемлекеттік университеті

Тармақталу алгоритмін
орындайтын программаны құру.

 

Орындаған:Тілеуғабыл
А ВТ-405

Тексерген: Жаксыгулова
Д.Д
 
                                                                            
2
Алгоритм
Алгоритм – атқарушы орындайтын амалдардың
тиянақты жоспары.
Алгоритм қасиеттері
• дискреттілік: жекелеген қадамдардан(командалардан)
тұрады
• айқындылық: атқарушыға түсінікті болатын
командалардан тұруы керек
• белгілілік: бастапқы деректері бірдей болған жағдайда
нәтижесі де бірдей болады
• нәтижелік: әрекеттердің шектеулі санынан кейін белгілі
бір уақытта қорытынды нәтиже алуымыз керек
• жалпылық: алгоритм әр түрлі алғашқы мәліметтер
үшін әр түрлі нәтижелер беруі тиіс
• дұрыстылық: алғашқы мәліметтер әр түрлі
болғандығына қарамастан барлық жағдайда дұрыс
нәтиже береді
3
Программа
Программа дегеніміз -
• қандай да бір программалау тілінде
жазылған алгоритм
• компьютерге қажетті командалардың
жиынтығы

Команда – компьютер орындауға міндетті
әрекеттің өрнектелуі.
• алғашқы мәліметтерді қайдан алу керек?
• олармен қандай амалдар орындау керек?
4
Программалау тілдері
• Машинаға бейімделген (төменгі деңгейлі) -
әрбір команда процессордың бір командасына
сәйкес келеді (ассемблер)
• Жоғарғы деңгейлі тілдер – кәдімгі табиғи
тілге(ағылшын тіліне) ұқсайды, адамның
түсінуіне оңай, бір ғана компьютерге тәуелді 
болмайды.
• Жаңадан үйренушілерге: Бейсик, ЛОГО,
Паскаль
• Кәсіби: Си, Фортран, Паскаль
• Жасанды интеллект тапсырмалары үшін:
Пролог, ЛИСП
• Интернет үшін: JavaScript, Java, Perl, PHP,
ASP
5
Паскаль тілі
1970 – Никлаус Вирт (Швейцария)
• студенттерді оқытуға арналған тіл
• «жоғарыдан төменге қарай» программаларын
жасау
Есеп

Бағыныңқы есеп1 Бағыныңқы есеп2 Бағыныңқы есеп3

1.1 1.2 1.3 2.1 2.2 2.3 3.1 3.2 3.3

• берілгендердің әр түрлі құрылымдары(массивтер,
құрылымдар, жиымдар)
6
Программа қандай бөліктерден тұрады?

program <программаның аты>;
const …;{тұрақтылар}
var …; {айнымалылар}
{ процедуралар мен функциялар }
begin
… {негізгі программа}
end.
фигуралық жақшаның ішінде
орналасқан түсініктемелер
программамен өңделмейді
7
Программа қандай бөліктерден тұрады?

Тұрақты – өз атауы болатын, өзгермейтін шама, .
Айнымалы – өз атауы (жад ұяшығы)болатын, өзгеретін
шама.
Процедура – кейбір әрекеттерді сипаттайтын қосалқы
алгоритм (мысалға шеңберді салу).
Функция – есептеулерді орындайтын қосалқы алгоритм
(квадрат түбірді табу, sin).
8
Программалар, тұрақтылар, айнымалылар 
атауы
Атауларды сипатта ғанда
• латын әріптерін (A-Z)
Бас әріптер мен кіші әріптердің арасында айырмашылық болмайды
• сандарды

Атаулар санмен басталмауы керек
• астын сызу белгісін  _
                                                     қолдануға болады
Атауларды сипаттағанда
• орыс, қазақ әріптерін
• бос орындарды
• жақшаларды, +, =, !, ? белгілерін және т.б.
                                                        қолдануға болмайды

Қай атаулар дұрыс жазылған?
 AXby    R&B    4Wheel    Вася    “PesBarbos”  TU154    
[QuQu]     _ABBA    A+B
9
Тұрақтылар

const
i2 = 45; { бүтін сан }
pi = 3.14; { нақты  сан }
бүтін және бөлшек бөліктері нүктемен
ажыратылады
qq = 'Вася'; { символдар қатары }
орыс, қазақ әріптерін қолдануға болады!

L = True; { логикалық шама }
екі мән қабылдай алады:
• True (ақиқат, «иә»)
• False (жалған, «жоқ»)
10
Айнымалылар
Айнымалы – аты, типі және мәні болатын шама.
Айнымалының мәнін программаның жұмысы
кезінде өзгертіп отыруға болады.
Айнымалылардың типі:
• integer { бүтін }
• real { нақты }
• char { бір символ }
• string { символдық тіркес }
• boolean { логикалық }
Айнымалыларды сипаттау (жад бөлу):
var a, b: integer;
Q: real;
s1, s2: string;
11
Айнымалының мәнін қалай өзгертуге 
болады?
Оператор – жоғары деңгейлі программалау тілінің
командасы.
Меншіктеу операторы айнымалының мәнін өзгерту
үшін қолданылады.
Мысал:
program qq; a
var a, b: integer; ?
5 5

begin
b
a := 5; ?
7 5+2
b := a + 2;
a := (a + 2)*(b – 3); a
5 7*4
end.
12
Меншіктеу операторы

Жалпы құрылымы:
<айнымалы атауы> := <өрнек>;
Арифметикалық өрнектің құрамында
• тұрақтылар
• айнымалы атаулары
• арифметикалық амалдар белгілері:
+ - * / div mod
көбейту бөлу бүтінді бөлуден
бүтінге бөлу қалған
қалдық
• функцияларды шақыру
• жақшалар ( )
13
Қай операторлар дұрыс жазылмаған?

program qq;
var a, b: integer;
x, y: real;
begin айнымалы атауы := белгісінің
сол жағында болуы керек
a := 5;
бүтін мен бөлшектің арасы
10 := x; нүктемен ажыратылуы керек
y := 7,8;
нақты мәнді бүтін
b := 2.5; айнымалыға меншіктеуге
болмайды
x := 2*(a + y);
a := b + x;
end.
14
Амалдарды орындау тәртібі
• жақша ішіндегі өрнекті есептеу
• солдан оңға қарай көбейту, бөлу, div, mod
• солдан оңға қарай қосу және алу
2 3 5 4 1 7 8 6 9
z := (5*a*c+3*(c-d))/a*(b-c)/ b;
5ac 3(c d )
z (b c)
a 2 5c 2 d (a b) ab
x
(c d )(d 2a )

2 6 3 4 7 5 1 12 8 11 10 9
x:=(a*a+5*c*c-d*(a+b))/((c+d)*(d-2*a));
15
Екі санды қосу
Есеп. Екі бүтін санды қосып, қосындысын
экранда шығару.
Шығарылуы:
program qq;
var a, b, c: integer;
begin
read ( a, b );
c := a + b;
writeln ( c );
end.
16
Енгізу операторы

read ( a ); { а айнымалысының мәнін
енгізу}
read ( a, b ); { а және b
айнымалыларының мәндерін
енгізу}
Екі санды қалай енгізуге болады?
бос орын арқылы: 25 a
25 30 30 b
Enter арқылы:
25 25 a
30 30 b
17
Шығару операторы

write ( a ); { a айнымалысының
мәнін шығару}
writeln ( a ); {a айнымалысының мәнін
шығарып,келесі жолға
көшу}
writeln ( ‘Салем!' ); { мәтінді шығару}

writeln ( ‘Жауап: ', c ); { мәтінді
және c айнымалысының мәнін
шығару}
writeln ( a, '+', b, '=', c );
18
Шығару форматтары
program qq;
var i: integer;
x: real;
begin барлық
i := 15; символдар
саны
writeln ( '>', i, '<' ); >15<
writeln ( '>', i:5, '<' ); > 15<
x := 12.345678;
writeln ( '>', x, '<' ); >1.234568E+001<
writeln ( '>', x:10, '<' ); > 1.23E+001<
writeln ( '>', x:7:2, '<' ); > 12.35<
end. барлық
символдар бөлшек бөлігіндегі
саны символдар саны
19
Толық шығарылуы
program qq;
var a, b, c: integer;
begin
writeln(‘Екі бүтін сан енгізіңіз');
read ( a, b );
c := a + b;
writeln ( a, '+', b, '=', c );
end.
бұны компьютер шығарады
Протокол:
Екі бүтін сан енгізіңіз
25 30 бұны программа жазушы өзі енгізеді
25+30=55
20
Сызықтық алгоритмның блок-схемасы

басы «басы» блогі

енгізу a, b «енгізу» блогі

c := a + b; «процесс» блогі

шығару c «шығару» блогі

соңы «соңы» блогі
21
Тармақталу алгоритмдері
Есеп. Екі бүтін сан енгізіп,экранға олардың үлкенін
шығару.
Шығару амалы: бірінші сан екінші саннан үлкен болса,
біріншісін, ал егер кіші болса екіншісін экранға шығару.
Ерекшелігі:  атқарушының әрекеті кейбір шарттардың
орындалуына байланысты болады (егер …әйтпесе …).

ҚҚадамдарды
адамдардыңңтізбектеп
тізбектепорындалуы
орындалуыкейбір шарттарғғаа
кейбіршарттар
байланысты
байланыстыболатын
болатыналгоритмдерді тармаққталу
алгоритмдерді тарма талу
алгоритмдері
алгоритмдерідеп
депатайды.
атайды.
22
Шартты оператор

if <шарт> then begin
{егер шарт орындалса, не істеу керек}

end
else begin
{егер шарт орындалмаса, не істеу керек}
end;
Ерекшеліктері:
• else-тің алдында нүктелі үтір болмауы керек
• екінші бөліктің (else …) болмауы да мүмкін
(толымсыз түрі)
• егер блокта бір ғана оператор болса, begin мен
end сөздерін жазбауға да болады
23

Назарларыңызғ
а рахмет!

Ұқсас жұмыстар
Кездейсоқ айнымалы ұғымын қарастыру. Кездейсоқ айнымалымен жұмыс істейтін процедуралар мен функциялар. Тармақталу алгоритмін орындайтын программаны құру
Кездейсоқ сандар
Кездейсоқ айнымалы ұғымы. Алгоритм
Кездейсоқ айнымалы ұғымы. Алгоритм. Тармақталу алгоритмін орындайтын программаны құру
Алгоритм құруға үйрету
Алгоритм және оның қасиеттері
Тармақталу алгоритмдері
Шартты операторлар
Оралымды алгоритмдер
Трансляция түсінігі. Формальды тілдер түсінігі. Формальды тілді сипаттаудың қатаң тәсілдері және метатіл туралы түсінік
Пәндер