Var a: Integer;
Ретті тип қарапайым типтердің жинағынан тұрады. Нақты типтерден басқа бардық типтер реттілік тип болып табылады. Олар келесі төрт сипаттамасына байланысты ерекшеленеді.
Барлық мүмкін мәндер реттелген жинақтан тұрады.
Turbo Pascal жеті құрылымдық ретті типтен тұрады: Integer (бүтін), Shortint (қысқа бүтін), Longint (ұзын бүтін), Byte (байт түріндегі ұзындық), Word (сөз түріндегі ұзындық), Boolean (логикалық) және Char (символдық).
Массив типі
Массив типі бір компонентке берілген тип барлық элементтер үшін берілетін болып табылады. Осының көмегімен массивтің бір элементін сипаттау арқылы барлықө элементіне бірдей мәліметтер типін аламыз.
Массив элементі үшін нақты анықтама ретінде мынаны айтуға болады: массив элементінің типі нөлдеу тәсілімен жүреді, Және типті индекстеумен жүреді.
Жазба типі
Жазабалар, массив сияқты құрылымдық типтен қалыптастырылған. Массивке қарағанда жазбада типтерді біріктіруге болатын мүмкіндік қарастырылған.
Жинақ типі
Жинақ типтегі мәндер диапазоны анықталған реттін тип үшін қолданылады. Әр мүмкін тип мәні базалық типтің мәнін қабылдай алады.
Базалық тип 256 мәнен жоғары болмауы керек. Базалық тип жинағы бола алмайтындар: ShortInt, Integer, LongInt, Word.
Ке-келген жинақ мәні [] бола алады. Ол жинақтың бос екендігін білдіреді.
Файлдық тип компоненттердің тізбегінен тұрады. Компоненттер файлдық типті хабарлаумен орнатылмайды.
Сілтеуіш типі
Сілтеуіш типі (көрсеткіш) динамикалық объектілерді көрсететін тип болып табылады. Сілтеуіш типтің айнымалысы жадының динамикалық адресіне байланысты болады.
Бекіту сұрақтары:
Типтердің қолданылуы
Типтердің түрлері
ПАСКАЛЬ ТІЛІНДЕГІ ОПЕРАТОРЛАР
Дәріс жоспары:
Меншіктеу операторы.
Енгізу/шығаруды ұйымдастыру. Сызықтық алгоритмдер.
Құрамды операторлар.
Шартты операторлар. Логикалық өрнектер.
Меншіктеу операторы
Меншіктеу операторы айнымалының ағымдағы мәнін келесі жаңа мәнге өзгерту үшін қолданыладытн оператор.
Өрнек айнымалы типімен сәйкес келуі керек.
Айнымалыны меншіктеу өрнегі нақтылы келесі түрде болады:
<айнымалы аты >:=<өрнек>;
Өрнек тұрақты, арифметикалық, логикалық болуы мүмкін.
Арифметикалық өрнектің нәтижесі болып сан табылады. Арифметикалық өрнек + - * / операцияларынан және арифметикалық функциядан тұрады. Операндылардың арасында мәндетті түрде операция белгісі тұруы керек. (мысалы: «2х» жазбасына рұқсат етілмейді). Функцияның аргументі дөңгелек жақшада жазылады. (мысалы, sin(x), cos(x))
П Р И О Р И Т Е Т Т Е Р К Е С Т Е С І
Енгізу/шығаруды ұйымдастыру
Құрылғылардың өзара байланысы ақпаратты сақтау және ішкі ортамен қолданушының байланысы біздің үрдісіміз үшщін қажетті үрдіс болып табылады. Осы үшін Паскаль тілінде енгізу/шығару процедурасы жауап береді.
Осы құрылымдар аргументті енгізу үшін қолданылады.
Read (<мән тізімі>);
Readln(<мән тізімі >);
Осы операторларың көмегімен пернелер тақтасынан айнымалыларға мәліметті енгізуге болады.
Енгізу жүрісі былай орындалады: бағдарлама жүрісі тоқтатылады, экранның бетіне курсор пайда болады, компьютер қолданушыдан мәліметті енгізуді сұрайды. Олар енгізу тізімінде көрсетілген. Қолданушы пернелер тақтасы арқылы мәнді енгізеді, артынан Enter-ді басады. Осыдан кейін айнымалы сәйкес мән бағдарламаның орындалуын жалғастырады.
Readln процедурасы жаңа жолдан бастап іске асады.
Мәліметті шығару үшін Паскаль тіліндеекі процедура бар. Олар:
Write(<шығару тізімі>);
Writeln(<шығару тізімі>);
Осы процедураның көмегімен экранның бетіне тізім бойынша берілген мәлімет шығады. Тізімнің элементі болып айнымалы аты, өрнек, тұрақты табылады. Тізімнің элементі үтір арқылы бөлінеді
Төмендек елтірілген мысалы енгізу шығару операторын қолданады:
Program Primer1; { - p*r2 дөңгелегінің көлемін есептеу керек}
Const pi=3.1415;
Var
R, s:real;
Begin
Writeln(‘Дөңгелек радиусын беріңіз’);
Readln(R);
S:=pi*sqr ( r );
Writeln(‘Дөңгелектің көлемі келесі радиусқа ’ , r, ‘тең’, s);
End.
Осы бағдарламаның көмегімен қолданушыдан дөңгелектің радиусын сұрайды. Және оның мәнін экранға шығару мүмкіндігінің барлығын жасайды. Ол үшін бағдарламаны бір рет іске қоссақ жеткілікті. Шыққан нәтижені міндетті түрде түсінідіру керек. Себебі енгізу түсінікті болуы үшін.
Құрамды оператор
Осы операторды басқаша айтатын болсақ оператор емес. Кейбір арифметикалық әрекеттерді жақшамен жабу керек болады, командалардың тізімі де олардың бірігуін талап етеді. Осы операторлық жақшаны жас ауға мүмкіндік береді.
Құрамды оператордың жалпы түрі:
Begin
<оператор1>;
<оператор2>;
<оператор3>;
. . .
<операторN>;
End;
Осы құрылыммың көмегімен бағдарлама құрылымын еске түсіруге болады. Ерекшелігі сол құрамды оператордың соңында нүктелі үтір қойлады, ал бағдарлама соңында нүкте қойлады. Жалпы бағдарлама үлкен құрылымды оператор болып табылады. End алдында нүктелі үтірді қоюға болмайды.
Құрамды оператор бағдарлама құру кезінде жиі кездеседі.
. . .
Begin
Begin
a:=1;
b:=3;
End;
C:=a+b;
End.
Шартты оператор. Логикалық өрнектер
Алгоритмдік құрылымның негізгі бір бөлігі болып альтернатива табылады. (Ветвление).
Бағдарламаны орындауда екі әрекеттің екуі де бар болса, бірақ олардың біреуі ғана орындалса, онда нәтиже не жалған не ақиқат болады. Үшіншінің керегі жоқ. Осындай кестенің көмегімен тапсырмаларды шешуге болады. Осындай тапсырмалар өте көп. Мысалы үшін y=1/x өрнегінің мәнін табу керек болсын. Осы функцияның мәні үнемі бар бола бермейді. Демек барлық аргумент мәні үшін емес.
1. х мәнін алу керек.
2. Егер х=0, онда шешімі жоқ деп жазу керек әйтпесе y=1/x есептеу керек.
Паскаль тіліндегі шартты оператордың форматы:
If <шарт> then <оператор>
Else <оператор2>;
Then және Else бөлімдері тек бір оператордан тұрады. Егер орындалатын және орындалмайтын шартты орындау екрек болмаса және тапсырманы шешу керек болса, онда қанша әрекет арқылы орындауға болады? Онда осы жерге құрамды оператор келеді. Операторлық жақшаның көмегімен кез-келген оператордың санын жабуға болады. Осы жағдайда шартты оператордың нұсқасы:
If <шарт>
Then begin <1операторлар тобы > end
Else begin <2операторлар тобы> end;
Паскаль тіліндегі бағдарламада шарт логикалық тип (boolean) болып табылатын мәннен тұра алады. Бұл қарапайым айнымалы бола алады немесе логикалық өрнек бола алады.
Логикалық өрнек келесі операциялық қатынастардың көмегімен құрылады: (> < >= <= = <>) және логкиалық операциялардың көмегімен құрылады and, or, not.
Мысал 1. Екі санның арасынан ең үлкенін табу керек
Program Example1;
Var a, b, max: integer;
Begin
Writeln (‘Санды енгізу керек’);
Readln(a,b);
If a>b then max:=a else max:=b;
Writeln(‘max=’, max);
End.
Мысал 2. Берілген коэффициенттер бойынша квадраттық теңдеуді шешу керек.
Коэффициентті енгізу керек;
D-ні табу керек;
if d<0 түбірі жоқ болса else түбірді табу керек экранға шығару керек
Program Example2;
Var a, b, c, d, x1, x2: real;
Begin
Writeln (‘теңдіктің коэффициентін енгізу керек’);
Readln (a,b,c);
If a<>0 then begin
D:=b*b-4*a*c;
If d<0 tneh writeln (‘түбірі жоқ’)
Else begin
X1:=(-b+sqrt(d))/2*a;
X2:=(-b-sqrt(d))/2*a;
Writeln (‘x1=’, x1:8:3, ‘x2=’, x2:8:3);
End;
End
Else write(‘Бұл квадртаттық теңдеу емес’);
End.
Шартты операторлар тізбекті бола алады. Немесе ішкі оператор бола алады. Ішкі операторда ең бастысы шарттың нұсқасын шатастырып алмау керек.
Ескерту: Else альтернативасы жақын жатқан IF операторына қатысты болып табылады.
Шартты операторды қолдану мысалдары:
1. Берілген нүктенің дөңгелек ішінде жатыр ма жатқан жоқтығын табу керек
Шешімі
(x-a)2+(y-b)2=r2; {нүкте дөңгелекте жатыр }
(x-a)2+(y-b)22; {нүкте дөңгелек ішінде жатыр }
(x-a)2+(y-b)2>r2; {нүкте дөңгелекте жатқан жоқ}
2. Функция берілген
Бағдарлама фрагменті:
if x<5
then y:=x+1
else if x>5
then y:=x*x-2
else y:=x*sqr(x)+3.
Бекіту сұрақтары:
Операторлардың түрлері
Шартты оператордың қолданылуының мақсаты
Таңдау операторының қолданылуы
5>0>0>
Достарыңызбен бөлісу: |