Алгоритмдік тілдің негізгі мінездемелері. Алфавиті, ережелері және мәліметтер типтері



1 Программа тілі және оның жіктелуі.
2. Тілдің классификациясы.
3. Тілдің стандартты функцияларының қызметі.
4. Шамалар, мәліметтердің типтері
Программа тілі және оның жіктелуі.
2. Тілдің классификациясы.
3. Тілдің стандартты функцияларының қызметі.
4. Шамалар, мәліметтердің типтері.

Цюрих қаласындағы жоғарғы техникалық колледж (Швецария) профессоры Н.Вирт өзінің шығарған алгоритімдік программалау тілін француз математигі Блез Паскаль есімімен атады. Паскаль программалау тілі Бейсик, Фортран алгоритімдік тілдеріндей ғылыми- техникалық, инженерлік – математикалық есептеулерді ЭЕМ-да программалауға пайдалануға, оның логикалық қарапайымдылығы және тиімділігі кең мүмкіндік берді.
Жалпы Паскаль программалау тілінің мазмұны жеңіл, оқылуы қарапайымдылығы, тексеруге икемдігі, жүйесіне кіретін стандартты функциялар мен процедуралар көмегімен структуралық (құрылымдық)
программа құру әдістеріне байлылығы – алгоритімдерді детальді өңдеудің жеңіл, әрі сенімді ұйымдастырылуын қамтамасыз етеді.
Кез-келген тілдің алфавиті секілді, Паскаль программалау тілінің алфавиті әріптерден, цифралардан, арнайы символдардан құралады.
-Aa, Bb, Cc,……., Zz
-0,1,2,………,9 – араб цифрлары;
- арнайы символдар ретінде:
+ (қосу) = (тең)  () . (нүкте)
- (алу)   ()  () , ( үтір )
 (көбейту)  () жәй жақша  (нүктелі үтір)
 (бөлу)    тік жақша  (қос нүкте)
 (көрсеткіш) , (дәйекше).
Қызметші сөздердің тізімі:
ARRAY, AND, BEGIN, CASE, CONST, DIV, DO, DOWNTO, ELSE, END, FILE, FOR, FUNTION, GOTO, IF, IN, LABEL, MOD, NIL, NOT, OF, OR, PACKED, PROCEDURE, POGRAM RECORD, REPEAT, SET,
THEN, TO, TYPE, UNTIL, VAR, WHILE, WITH.
Идентификатор – қандай да болсын объектілерді белгілеу үшін қызмет етеді. Паскаль тілінде идентификаторлар: стандартты және

Алгоритмдік тілдің негізгі мінездемелері. Алфавиті, ережелері және
мәліметтер типтері
1 Программа тілі және оның жіктелуі.
2. Тілдің классификациясы.
3. Тілдің стандартты функцияларының қызметі.
4. Шамалар, мәліметтердің типтері.

Цюрих қаласындағы жоғарғы техникалық колледж (Швецария) профессоры Н.Вирт
өзінің шығарған алгоритімдік программалау тілін француз математигі Блез
Паскаль есімімен атады. Паскаль программалау тілі Бейсик, Фортран
алгоритімдік тілдеріндей ғылыми- техникалық, инженерлік – математикалық
есептеулерді ЭЕМ-да программалауға пайдалануға, оның логикалық
қарапайымдылығы және тиімділігі кең мүмкіндік берді.
Жалпы Паскаль программалау тілінің мазмұны жеңіл, оқылуы қарапайымдылығы,
тексеруге икемдігі, жүйесіне кіретін стандартты функциялар мен процедуралар
көмегімен структуралық (құрылымдық)
программа құру әдістеріне байлылығы – алгоритімдерді детальді өңдеудің
жеңіл, әрі сенімді ұйымдастырылуын қамтамасыз етеді.
Кез-келген тілдің алфавиті секілді, Паскаль программалау тілінің алфавиті
әріптерден, цифралардан, арнайы символдардан құралады.
-Aa, Bb, Cc, ... ..., Zz
-0,1,2, ... ... .,9 – араб цифрлары;
- арнайы символдар ретінде:
+ (қосу) = (тең) ’ (≥) . (нүкте)
- (алу) (≠) ’ (≤) , ( үтір )
∗ (көбейту) () жәй жақша ; (нүктелі үтір)
(бөлу) [ ] тік жақша : (қос нүкте)
↑ (көрсеткіш) , (дәйекше).
Қызметші сөздердің тізімі:
ARRAY, AND, BEGIN, CASE, CONST, DIV, DO, DOWNTO, ELSE, END, FILE, FOR,
FUNTION, GOTO, IF, IN, LABEL, MOD, NIL, NOT, OF, OR, PACKED, PROCEDURE,
POGRAM RECORD, REPEAT, SET,
THEN, TO, TYPE, UNTIL, VAR, WHILE, WITH.
Идентификатор – қандай да болсын объектілерді белгілеу үшін қызмет етеді.
Паскаль тілінде идентификаторлар: стандартты және
ЭЕМ-де қолданушы берген идентификаторлар болып бөлінеді.
Стандарттық идентификаторлар тілде стандартты объектілерді белгілеу үшін
ендірілген ( мысалы, стандартты программа, функциялар т.с.с.).
Паскаль программалау тілінде әркелкі элементарлық функцияларды есептеу
үшін стандартты функциялар ендірілген.
Стандартты функцияларды жазғанда олардың аргументері функция атынан кейін
жәй жақшаларға алынып жазылады;
Функцияның аргументі ретінде тұрақты, айнымалы немесе арифметикалық өрнек
болуы мүмкін.
Паскаль программалау тілінің негізгі түпнұсқаларындағы стандартта
функциялардың тізімі төмендегі кестеде (кесте 1) келтірілген:

Стандартты функциялар

Функция Атқаратын қызметі Аргумент типі Функция типі
ABS (x) x-x абсолют мәні real; integer; real; integer;
SQR (x) Х2 real; integer; real; integer;
SIN (x) Sin x real; integer; real; real;
COS (x) Cos x real; integer; real; real;
SQRT(x) X квадрат түбірін есептейді real; integer; real; real;
ARCTAN(x) Arctg x real; integer; real; real;
EXP(x) ex real; integer; real; real;
LN(x) lnx real; integer; real; real;
LOG(x) lgx real; integer; real; real;
TRUND(x) x- бүтін бөлігі real; integer; integer; integer;
ROUND(x) x- мәнін дөңгелектеу real; integer; integer; integer;
ODD(x) TRUE-X-ТАҚ болса,
FALSE-X-жұп болса integer; Boolean;
ORD(x) 1) х-элементің реттік номерін табу;
2) ORD(x)=x;
3) символ тізбегіндегі символ номерін ондық санау жүйесінде шығарады
Boolean; санаулы;
integer;
integer; integer; integer; integer; char;
CHR(x) Реттік номері, бойынша символды шығарады integer; char;
SUCC(x) Келесі элементті анықтау integer; Boolean; char; integer; Boolean;
char;
PRED(x) Алдыңғы элементті анықтау integer; Boolean; char; санаулы;
integer; Boolean; char; санаулы;
EOF(F) TRUE-F файлы соңы болса,
FALSE-керісінше болғанда Файлдық; Boolean;
EOLN(F) F файл жолының соңы Файлдық; Boolean;
EOLN TRUE-F жолдың соңы болса,
FALSE-керісінше болғанда Boolean;

Паскаль программалау тілінде қолданылатын шамаларды мына түрде
топтастырады:
Шамалар

Жәй: Күрделі:
Стандарттық: Айнымалы:

Бүтін- integer; Шектелген-(ограничений); Массив-array
Нақты- real; Санамалы-(перечисляемый); Жиын-set;
Литерлік- char; Жазба-file;
Логикалық- Boolean;

Стандарттық шамалар
1. INTEGER- бұтін типті сандар. Бүтін типті тұрақты- нүктесіз жазылған кез
келген ондық. Мысалы,14, -357, 0,5390 т.б. Өз мәндері ретінде бүтін типті
тұрақтыларды қабылдайтын айнымалылар да бүтін типке жатады. Бүтін типті
берілгендермен төменгі арифметикалық амалдар орындауға болады: +, -, *, DIV-
бөлшек бөлімін алып тастап бөлу, MOD- бөлгендегі бүтін қалдықты табу.
2. REAL-нақты типті сандар. Нақты сандар кез келген оң немесе теріс ондық
нүктесі бар бөлшек сандар. Нақты сандар Паскаль тілінде екі түрде: тұрақты
нүктелі және жылжымалы нүктелі түрінде берілуі мүмкін. Мысалы, а) -32.0.01.
-2.76 -.977 (-0,977) тұрақты нүктелі сандар; б) жылжымалы нүктелі сандар
немесе Е-қалыпты сандар. Олар mEp түрінде жазылады. Мұнда m-мантисса: p-
бүтін сан дәрежесі Е – дәреже негізі (Е =10 деп түсіну керек). 10-дық
дәрежесі арқылы, яғни экспоненциальдық түрде жазылған нақты сандар. Мысалы:
235.988Е-3-235.988 * 10-3 ; -211.Е+5- -21100000; .78Е7- 0.78 * 10 7 в)16-
лық санау жүйесінде жазылған сандар $ (доллар) префиксі арқылы ажыратылады.
Бұл сандардың анықталу аралығы: $ 00000000 ÷ $FFFFFFFF;
3. CHAR- СИМВОЛДЫҚ ШАМАЛАР. Символдық тұрақтылар ‘ дәйекше символымен
қоршалған кез келген символдар тізбегі. Мысалы, ‘Атырау’, ‘С’- символ С.
Символдық типтерге салыстыру амалдары: (кіші), =(кіші не тең) ,
=(үлкен не тең), (үлкен), (тең емес) қолданылады.
4. BOOLEAN- логикалық шамалар. Логикалық типтерді- математикалық логика
негізін салушы, ағылшын математигі Д.Буль құрметіне бульдік типтер деп те
атайды.
TRUE (ақиқат) немесе FALSE (жалған) деген мәндерді қабылдайтын шамаларды
логикалық шамалар дейді.
Логикалық типті берілген кейбір шарттардың дұрыс немесе дұрыс еместігін
тексергенде және шамаларды салыстыру үшін келесі салыстыру амалдарды:
(кіші) , = (кіші не тең), =(тең), =(үлкен не тең), (үлкен), (тең
емес) қолданылады.
Мысалы, 5 3 TRUE – ақиқат нәтиже береді. 5 = 3 FALSE – жалған нәтиже
береді. Сондай-ақ, логикалық берілгендерге OR – логикалық қосу; AND –
логикалық көбейту; NOT – логикалық терістеу сияқты амалдар қолданылады.
Логикалық шамалдар мәні FALSE TRUE түрінде анықталады. Келтірілген
амалдардың нәтижелері төменгі кестеде келтірілген
(кесте 2)

Логикалық амалдар
A B NOTA A OR B A AND B
TRUE TRUE FALSE TRUE TRUE
TRUE FALSE FALSE TRUE FALSE
FALSE TRUE TRUE TRUE FALSE
FALSE FALSE TRUE FALSE FALSE

Алгоритмдік құрылым: циклді. Графиктік түрде берілуі

Математикада,экономикада көптеген есептерді шығару кезеңінде бір теідеуді
пайдаланып, ондағы айнымалының өзгеруіне байланысты оны бірнеше рет
қайталап есептеуге тура келетін сәттер де жиі кездеседі. Осындай қайталап
орындалатын есептеу процесінің белгілі бір бөліктерін цикл деп атайды. Осы
бірнеше рет қайталанатын бөлігі бар алгоритмдер тобы циклдік алгоритмдерге
жатады.Циклдік алгоритмдерді пайдалану оларды кейіннен программаларда цикл
операторы түрінде қысқартып жазу мүмкіндігін береді.Циклдер қайталану
санының алдын ала белгілі және белгісіз болуына байланысты екітопқа
бөлінеді.

Қайталану сандары алдын ала белгілі болып келетін циклдер тобы
арифметикалық цикл болып есептеледі,ал орындалу саны белгісіз циклдер
қадамдық цикл болып аталады. Цикл орындалуы алдында оның айнымалы аргументі
параметрі алғашқы мәнге ие болуы керек,сонан кейін қайталану кезеңінде цикл
параметрі белгілі бір шамаға өзгере отырып,ол алдын ала берілген ең соңғы
мәнге дейін жетуі керек.Алгоритмнің орындалу барысында
циклпараметрі,мысалы, х өзінің ең алғашқы х0 мәнінен ең соңғы хk мәніне
дейін тұрақты шамаға (dx) өзгеріп отырады.Осының нәтижесінде х мынадай
мәндерді қабылдайды: x0, x0+dx,x0+2dx,..,x0+(n-1)dx,xk,мұнда ғы n циклдің
қайталану саны,ол былай анықталады.

• n=(xk-x0dx)+1, мұнда (...) өрнектің бүтін бөлігі алынатынын көрсетеді.n
әрқашанда бүтін сан болуы тиіс, егер ол аралас сан болса,онда оның бөлшегі
алынып тасталады,өйткені циклдің қайтаналу саны бүтін натуралдық сан болуы
тиіс. Арифметикалық цикл үшін y=f(x) функ.ң есептелу жолы алгоритм ретінде
4.8 суретте көрсетілген. Мұндағы 3ші, 6шы, 7ші блоктар циклді ұйымдастыру
үшін қажет. Олар цикл параметрінің алғашқы мәнін, өзгерту қадамын белгілеп
және оның ең соңғы мәніне жеткен жетпегенін тексереді.Ал 4 және 5 блоктар
бірнеше рет қайталанып циклдің өзін құрайды. 7 блок шартты тексеру жолымен
қайталану процесін ұйымдастырады.
Алгоритмнің циклдік құрылымын программалау
Циклдік программа – белгілі бір командалардың бірнеше рет қайталанып
орындалуы. Практикада есептерді немесе мәселелерді шешкенде бір типті
әрекеттерді осы әрекеттерді анықтайтын параметрлердің әр түрлі мәндерінде
көп рет қайталау қажеттігі туады. Осындай әрекеттерді жүзеге асыратын
алгоритмді циклдік, ал көп рет қайталанатын әрекеттер тізбегін цикл деп
атайды. Циклдерді пайдалану жинақы программалардың көмегімен есептеулердің
үлкен көлемдерін орындауға мүмкіндік береді.
Циклдік операторлардың үшін, әзірше және дейін деген түрлері белгілі.
Кейде циклді неше рет қайталау керек екені алдын ала белгісіз, бірақ ол
қандай да бір шарт сақталғанша орындалуы керек екені белгілі болады,
сондықтан әзірше циклін қарастыру қажет.
Әзірше циклінің жазылу түрі: WHILE P DO S
Мұндағы WHILE P DO – цикл тақырыбы; WHILE (әзірше), DO (орындау) –
қызметші сөздер (DO соңына нүктелі үтір қойылмайды); P – шарт (логикалық
(бульдік) өрнек); S – цикл денесі.
WHILE циклінде бірінші рет P – нің мәні тексеріледі де, егер мән TRUE
болса (шарт сақталса), S орындалып, басқару қайтадан P шартының қайталану
кездегі сақталуын тексеруге беріледі. Егер P мәні FALSE болса, S
орындалмай, басқару WHILE циклінен соң кездесетін бірінші операторға өтеді.
Мысал: n! мәнін есептеу керек.
Program fakt; uses crt;
var r, n, k : integer;
begin clrscr; write (‘n=?’); readln (n); k:=1; r:=1;
while k=n do begin r:=r*k; k:=k+1 end;
write (n, ‘!=’,r)
end.
WRITE операторы параметрлер ішінде үтірлер арқылы бөлініп және
дәйекшелерге алынып жазылған мәндерді сол күйінде шығарады. Мысалы, алдыңғы
программаның орындалу нәтижесінде n=6 үшін Write (n,'!=', r) операторының
экранға шығаратын мәтіні: 6!=720.

Есептің шарты соңынан белгілі болған кайталау құрылымында цикл-дейінді
қарастырамыз.
Дейін циклінің жазылу түрі:
REPEAT S UNTIL NOT P
REPEAT – цикл тақырыбы, UNTIL – циклдің аяқталу шартын тексеру, Repeat
(қайталау), Until (дейін) – қызметші сөздер. Repeat, Until – опреаторлық
жақшалар рөлін де орындайды. Until – дің алдындағы оператордан соң нүктелі
үтірдің қойылмауы тиіс. S – цикл денесі. NOT P - P шартына кері болатын
емес шарты. NOT P мәні TRUE болған кезде циклді орындау аяқталады.
Мысал: Жалпы мүшесі ak=1(k2+3) болатын тізбектің алғашқы n мүшесі мен
олардың қосындысын табу керек (k=1, 2, ..., n).
REPEAT циклін пайдаланып, программаны мынадай түрде құруға болады:

Program тіzbек;
var n, k : integer ; a, s : real;
begin write (‘n=?’); readln (n); k:=1; s:=0;
repeat a:=1(k*k+3); writeln (‘a=’, a);
s :=s+a; k:=k+1 until kn;
write (‘s=’, s)
end.

Мысал: Жалпы мүшесі an=a1*qn-1 формуласы арқылы берілетін шексіз кемімелі
геометриялық прогрессияның eps – тен кем емес мүшелерінің қосындысын табу
керек (0 q0 кезінде qn-1 дәрежесінің мәні үшін exp((n-1)*In(q)) өрнегінің
мәні алынатындықтан, программаны мынадай түрде құруға болады:

Program geomprogr; Uses crt;
{Кемімелі геометриялық прогрессия}
var al, ... жалғасы

Сіз бұл жұмысты біздің қосымшамыз арқылы толығымен тегін көре аласыз.
Ұқсас жұмыстар
Орта мектепте программалау негіздерін оқыту
Turbo Pascal 7.0 интегралдық программалау ортасын пайдалану
Алгоритмнің күрделілігі - осы алгоритмді есептеу процесінде қолданылған элементарлы қадамдар саны
Алгоритм жазу жолдары
Орта мектепте Паскаль программалау тілін оқытуды жетілдіру жолдары
Алгоритмдерді Паскаль программалау тілінде әзірлеу
Тармақталған алгоритмдерді программалау
Есептеу техникасынан дәрістер
Turbo Pascal тілінде циклдармен жұмыс
Турбо Паскаль бағдарламысының тарихы
Пәндер