Тармақталған алгоритмдердің программасын құру үшін шартты операторларды пайдаланамыз. Осы уақытқа дейін біз сызықтық алгоритмдерге программа құрып келдік. Яғни, берілген есепте ешқандай шарттар болмаған. Ал, бүгінгі сабағымызда берілген есепте бір немесе бірнеше шарт кездесетін жағдайды қарастырып, оған программа құрамыз. Ал бұл алгоритм түрі тармақталған алгоритм.
Тармақталған алгоритмдер – алгоритмде арифметикалық теңсіздік пен теңдік түрінде берілген логикалық шарт тексеріледі. Логикалық шарт тексеріледі, егер орындалса, онда 1 – жолмен, ал егер орындалмаса, онда 2-ші жолмен жүзеге асады да, соңында екі тармақ бірігеді. Мұндай алгоритмдерді шарт тексеру, яғни тармақталу алгоритмдері деп атаймыз. Блок схемасында шарт тексеру блогы – ромб қолданылады.
Тармақталу операторы көрсетілген шартқа тәуелді құрамына кіретін операторлардың орындалуын немесе орындалмауын қамтамасыз етеді. Тармақталған алгоритмдерді программалаған кезде мынадай қызметші сөздер қолданылады: if - егер , then – онда , else - әйтпесе.
Оператор программадағы іс-әрекеттердің орындалу реттілігін өзгертетін мүмкіндіктің ең кең тараған тәсілі болып табылады. Оператордың жазылу түрі:
{Егер шарт онда 1 оператор әйтпесе 2 оператор орындалады.}
IF <шартты өрнек> THEN <1 оператор> ELSE <2 оператор>;
Егер шарттың мәні «ақиқат» болса, THEN сөзінен кейінгі оператор, ал мән «жалған» болса, ELSE сөзінен кейінгі оператор орындалады.
Шарт өрнегін жазу үшін мынадай салыстыру белгілерін пайдаланамыз:
-
=
|
Тең
|
<
|
Кіші
|
<=
|
Кіші немесе тең
|
>
|
Үлкен
|
>=
|
Үлкен немесе тең
|
<>
|
Тең емес
|
Мысал:
program j;
var x,y:real;
begin
read(x);
if x<3 then y:=x+2 else y:=5*x;
write('y=',y);
end.
Мысал: Екі санды салыстырып, үлкен мәнді экранға шығар.
PROGRAM ERKEZHAN;
VAR a,b: real;
Begin
Write('vedite a,b');
read(a,b);
if a>b THEN write('max a') else write('max b');
end.
Оқушылар тапсырманы тақтада орындайды.
Сабағымызды бекіту үшін деңгейлік тапсырмаларды орындайық.
І деңгей
Мұғалімнің көрсеткен мысалына ұқсас есептерді шығару.
ІІ деңгей
Орташа есептерді шығару.
Кез-келген санның оң немесе теріс екенін анықтайтын программа құрыңыз.
PROGRAM ERKEZHAN;
VAR a: real;
Begin
Write('vedite a');
read(a);
if a>=0 THEN write('a он сан') else write('а терис сан');
end.
ІІІ деңгей
Күрделі есептер
Мысал:
Бөлменің температурасы 50 градустан жоғары болса, “ыстық” сөзін, 25 градустан жоғары болса, “қалыпты” сөзін, ал 25 градустан төмен болса, “суық” сөзін экранға шығару керек.
program h;
var t:real;
begin
read(t);
if t>=50 then write(' ыстык ') else
if t>=25 then write(' калыпты ') else write('суык ');
writeln('t=',t);
end.
Электронды түрдегі тест тапсырмаларын орындау.
Қатені табу
Мысал:
Радиусы R болатын шеңбердің ұзындығын есептеу программасын құрыңыз.
Қажетті формула L:=2*pi*R
program h;
var L,R:real;
const pi=3.14;
begin
read(R);
L:=2*pi*R;
writeln('L=',L);
end.
Оқушыларды бағалау
Бағалау парағы
№
|
Оқушының аты-жөні
|
Программ.
бөлігі
|
Деңгейлік тапсырма
|
Тест
|
Қатені табу
|
1.
|
|
|
|
|
|
2.
|
|
|
|
|
|
3.
|
|
|
|
|
|
4.
|
|
|
|
|
|
5.
|
|
|
|
|
|
Жиыны
|
|
|
|
|
|
Үй тапсырмасы:
Квадрат теңдеулердің түбірлерін табу.
program nik,tur;
var L,R:integer;
const pi=3,14;
begin
read(R);
L:=2*3,14*R;
writeln('L=',L);
end.
|
program nik,tur;
var L,R:integer;
const pi=3,14;
begin
read(R);
L:=2*3,14*R;
writeln('L=',L);
end.
|
program nik,tur;
var L,R:integer;
const pi=3,14;
begin
read(R);
L:=2*3,14*R;
writeln('L=',L);
end.
|
program nik,tur;
var L,R:integer;
const pi=3,14;
begin
read(R);
L:=2*3,14*R;
writeln('L=',L);
end.
|
program nik,tur;
var L,R:integer;
const pi=3,14;
begin
read(R);
L:=2*3,14*R;
writeln('L=',L);
end.
|
program nik,tur;
var L,R:integer;
const pi=3,14;
begin
read(R);
L:=2*3,14*R;
writeln('L=',L);
end.
|
program nik,tur;
var L,R:integer;
const pi=3,14;
begin
read(R);
L:=2*3,14*R;
writeln('L=',L);
end.
|
program nik,tur;
var L,R:integer;
const pi=3,14;
begin
read(R);
L:=2*3,14*R;
writeln('L=',L);
end.
| 3>2>1>
Достарыңызбен бөлісу: |