2.4 Сипаттаушы қызметші сөздер:
Қызметші сөз
|
Орысша аудармасы
|
Қазақша аудармасы
|
array
case
const
file
function
label
packet
procedure
program
set
record
type
var
|
Массив
Вариант
константа
файл
фукнция
метка
упакованный
процедура
программа
множество
запись
тип
переменная
|
массив
вариант
тұрақты, константа
файл
фукнция
белгі
ықшамдалған
процедура
программа
жиын
жазба
типі
айнымалы
|
2.5 Стандартты функциялар
№ |
функция
|
Функцияның жазылуы
|
Аргументтің типі
|
Функцияның мәнінің типі
|
1
|
х
|
ABS(x)
|
R,1
|
R,I
|
2
|
x2
|
SQR(x)
|
R,1
|
R,I
|
3
|
Sin x
|
SIN (x)
|
R,I
|
R
|
4
|
Cos x
|
COS (x)
|
R,I
|
R
|
5
|
ex
|
EXP (x)
|
R,I
|
R
|
6
|
ln x
|
LN (x)
|
R,I
|
R
|
7
|
x
|
SQRT (x)
|
R,I
|
R
|
8
|
arctg x
|
ARCTG (x)
|
R,I
|
R
|
9
|
Санның бүтін бөлігін бөлу
|
TRUNC (x)
|
R
|
I
|
10
|
Санды дөңгелектеу
|
ROUND (x)
|
R
|
I
|
11
|
Алдыңғы элементті табу
|
PRED (x)
|
I,C,B
|
I
|
12
|
Келесі элементті табу
|
SUCC (x)
|
I,C,B
|
I
|
13
|
Символдар жиынындағы х - ң реттік нөмерін анықтау
|
ORD (x)
|
C,B
|
I
|
14
|
Реттік нөмірі арқылы символдар жиынын символды табу
|
CHR (x)
|
I
|
C
|
15
|
Тақ санды анықтау
|
ODD (x)
|
I
|
B
| I –Integer, R-real, C-char, B-boolean
2.6 Паскаль тілінде программалау.
Программа құрылымы. Қарапайым программа
Алгоритм сызықтық , тармақталу және циклді болып кездеседі. Оның жалпы жазылу түрі:
алг <атау> (айнымалылар сипаттамасы).
басы
<алгоритм денесі>
соңы,
Машинаға түсінікті тілдердің бірінде жазылған алгоритмді программа деп атайды.
Паскаль тілінде программаның структурасы
proqram <аты>;
таңбалар бөлімі (label);
тұрақтылар бөлімі (const);
типтер бөлімі (type);
айнымалылар бөлімі (var);
процедуралар және функциялар бөлімі (procedure,function);
операторлар бөлімі.
Input, output-стандартты атаулар. Input (ендіру)-программаға клавиатурадан ендіру операторы. Оutput (шығару)-экранға не қағазға басып шығару операторы енгізілген кезде жазылады. Оларды жақшалармен қоса программа тақырыбына енгізбей кету мүмкін, компьютер оларды тақырыпта бар деп автоматты түрде қабылдайды.. Программаға операторлар бөлімінен басқа бөлімдердің енгізілуі міндетті емес. Олар қажеттілігіне қарай енгізілуі тиіс.
Паскаль операторлары:
- меншіктеу операторы;
ендіру (read);
шығару операторы (write);
- құрама оператор ;
- таңдау операторы (case);
"әзірше" циклінің операторы (while);
"үшін" циклінің операторы (for);
"дейін" циклінің операторы (repeat);
көшу операторы (goto);
бос оператор т.б.
Оператор құрамына бір не бірнеше қызметші сөз енуі мүмкін. Олардың біріншісін жай, екіншісін құрылымды опрератор деп атайды. Паскальдағы меншіктеу, ендіру, шығару, көшу және бос операторлары - жай, қалған операторлар құрылымды.
Операторлар бөлімі жай және құрылымды операторлардан тұруы мүмкін. Ол BEGIN- нен басталып, END -пен аяқталады да, олардың аралығы нүктелі үтір арқылы ажыратылып, орындалушы операторлар жазылады. END қызметші сөзінің соңына нүкте қойылуы тиіс, ол - программаның аяқталу белгісі. BEGIN
(басы), END (соңы)–ашу, жабу жақшаларының ролін орындайтын қызметші сөздер.Меншіктеу операторының жазылу үлгісі:
<айнымалы атауы>:= <өрнек >
Мысалы: x:=65,25; y: =x; u:=5/x +4*y; y=4-5*cos(x)+6*sin(z); Pi:=3,14;
Оперативті жадыдан мәндерді монитор экранына шығару WRITE операторы арқылы беріледі. Мысалы, х,у айнымалыларының мәндерін экранға шығару операторы – write(x, y), мұнда х,у айнымалыларын WRITE (жазу) операторының параметрі деп те атайды. Параметрлері үтір арқылы бөлініп, жай жақшалар ішінде жазылады.
WRITE операторының түрлі түрде жазылу мысалдары:
1) WRITE (x);
2) WRITE(x,‘ ‘, y); (‘ ‘) - бос орын белгісі
3) WRITE (3*x+5,’ ‘, y+2);
4) WRITE (x:n:m); WRITE(x/2:7:3)
5) WRITE (‘х-ті енгіз.);
Паскальда белгілі мақсатта пайдаланылатын жүйелік файлдар бар. Олардың стандартты атаулары:
INPUT- клавиатурадан ендіру файылының аталуы
OUTPUT-экранға шығару файылының аталуы
LST-принтерде басып шығару файылының аталуы т.б.
Паскаль тілінде құрылатын программада операторлар мүмкіндігінше нөмірленбейді(белгі қойылмайды); әр опрератордан соң нүктелі үтір таңбасы қойылады (ол операторларды ажырату белгісі ); бір жолға сыйғанша бірнеше операторды орналастыру мүмкін. Операторларды жол басынан бастап жазу, бір жолға бірнеше операторды орналастыру және ЕND қызметші сөзінің алдындағы оператор соңына нүктелі үтір таңбасын қою міндетті емес. Программаны оқуға ыңғайлы етіп орналастырса болғаны. Қызметші сөздер мен атауларды жазуға үлкен не кіші латын әріптерін пайдаланудың айырмашылығы жоқ.
2.7 Берілгендерді сипаттау
Бүтін типтер - жадыда 1 ден 4 байтқа дейін орын алатын мәнді айтады. Бұл мәндер кейбір арифметикалық операциялар орындай алады.
Тип
|
Диапазон
|
Жадыда керек орын
|
Byte
|
0..255
|
1
|
Shorint
|
-128..127
|
1
|
Integer
|
-32768..32767
|
2
|
Word
|
0..65535
|
2
|
longint
|
-2147483648..2147483647
|
4
|
Бүтін типтерге келесі арифметикалық операциялар орындайға болады:
+, -, /, *, div, mod және <><=>=стандартты функциялар: abs(x), odd(x), chr(x), sqr(x), sqrt(x) т.б.
Нақты типтер – жадыда 4-ден 6 байтқа дейін орын алатын мәнді айтады. Бұл мәндер арифметикалық операциялар орындайды.
Тип
|
Диапазон
|
Жадыда керек орын
|
Real
|
2.9*10E – 39..1.7*10E38
|
6
|
Single
|
1.5*10E – 45..3.4*10E38
|
4
|
double
|
5.0*10E – 324..1.7*10E308
|
8
|
Extended
|
1.9*10E – 4951..1.1*10E4932
|
10
|
comp
|
-2E+63+1..2E +63-1
|
8
|
Бүтін типтерге келесі арифметикалық операциялар орындайға болады:
+, -, /, *, div, mod және стандартты функциялар: abs(x), odd(x), chr(x), sqr(x), sqrt(x) т.б.
2.8 Сызықтық алгоритм
Сызықтық алгоритм негізінде құрылған программаны сызықтық деп, оның жай типті айнымалыларды пайдаланып құрылған түрін қарапайым деп те атайды.
1.1-мысал . 854 пен 456 сандарының қосындысын табу керек болсын.
Program kos; схемасы
var a, b, s: real;
begin
а:=6.5; b=3.9;
à:=854; b:=456;
s:=a + b
S:=a + b;
write’s:=’, s:7:5;
end.
Барлық меншіктеу операторларын пайдаланып, айнымалылардың түрлі мәндерімен жұмыс істеу ыңғайлы емес, себебі әр жолы , меншіктелінетін мәндерді алмастыру керек.
Программаны өзгертпей жұмыс істеу үшін READ (оқу) операторын пайдалану ыңғайлы. Оның жазылу түрі:
READ x1,х2,...,хк
Мұндағы хі і=1,2,3,...,к ендірілетін мәндерді сәйкес түрде қабылдайтын айнымалылар.
Енді мысалды READ операторын пайдаланып, программаны жалпы жағдайға лайықтап жазайық.
program kos;
var a, b, s :real;
begin
s:=a + b
write ’a, b=’;
readln a,b ;
S:= a+b;
write ’s:=,’s:9:4)
end.
Программаның орындалу барысында READ операторы кездессе, машина айнымалылар мәндерін ОЖ- ға ендіруді күтіп, тоқтап қалады. Мәндерді клавиатурадан аралықтарына бос орын қалдырып теріп, Enter пернесін басса, программаның орындалуы одан әрі жалғасады.
READ опреторының алдында мәндерді ОЖ ендірілуі тиіс айнымалыларды WRITE операторы арқылы экранда көрсетіп қойған жөн.
1.2 мысал. Қабырғалары берілген, үшбұрыштың ауданын табу керек.
program audan;
var
a, b, c, p, s: real;
begin
write ’a, b, c=?’;
read a, b, c;
P:=a+b+c/2;
S:=SQR p*p-a*p-b*p-c;
write ’p:=’,p:4:2,‘s:=’,s:4:2
end.
WRITE, READ- Паскальдың стандартты атаулары. Кейде олардың соңына LN жалғауын қосып, WRITELN, READLN түрінде жазу қажет. Мысалы:
readln a, b, h;
writeln x: 6: 2.
Мұндай оператор орындалған соң курсор экранда өзінің тұрған орнынан келесі жолдың басына ауыстырылады да, кезекті оператордың орындалуы экранда осы жерден бастап, көріне бастайды. Егер келесі жолды бос күйінде тастап кету қажет болса, программаға соңғы орындалатын LN жалғаулы операторлардан соң параметрсіз WRITELN операторын енгізсе болғаны.
1.3 - мысал. x, у үшін х2-sin(у) мәнін экранға шығару программасын құру керек.
program f;
uses crt;
var x, y, p: integer;
begin
clrscr;
write('x, y=');
readln (x, y);
p: =sqr(x) -sin( y);
writeln;
write('p:=',p)
end.
Программаның орындалуы экранда мынандай түрде болады.
{Ctrl+F9 (компиляцияға жібереміз)}
x, y=
45
45
{Alt+F5 (жауабын аламыз)}
p=57
Мұндағы clrscr (clear screen-экранды тазалау).
Uses crt, keupressed Турбо Паскальдағы тиісті жүйелік программалардың crt атаулы бөліміндегі экранның текстік режимін басқару құралдары.
Символдық шамаларды жолмен және бағана бойымен жазу.
program semia;
uses crt;
begin
clrscr;
writeln('Ernur,', 'Ainur,');
writeln('Adiljan,', 'Aisulu,');
writeln ('Marat,', ' Aknur');
writeln('Leila,', 'Timur,');
writeln;
end.
Түсініп оқуға жеңіл болу үшін күрделі программның әр жеріне түсініктемелер жазылады. Олар { } не (*) символдарының аралықтарына орналастырылады, мысалы: {Аудан}, {*Периметрдің жартысы*}. Компьютер түсініктемені оқымай тастап кетеді, ол тек программаны оқуды оңайлату үшін ғана қажет.
1.4 - мысал. Write операторын пайдаланып , өрнектер , тақырыптар орнаменттер салу процедурасы
PROGRAM х ;
BEGIN
WRITELN (' х ' );
WRITELN (' x x ' );
WRITELN (' x x ' );
WRITELN (' x х х х х x ' );
END .
Баспасы х
x x
x x
x х х х х x болады.
1.5- мысал. А,В сандарының арифметикалық және геометриялық ортасын анықтайтын программа жазыңдар, а, в санының арифметикалық ортасы (а+в)/2; в, а санының геометриялық ортасы:
PROGRAM Esep;
VAR
A,B,P,S :REAL;
BEGIN
READ ( A,B );
P=SQR(A*B);
S;=(A+B)/2;
WRITELN (' P= ',P);
WRITELN (' S= ',S);
END.
1.6- мысал. Тік бұрышты үшбұрыштың катеттері берілген. Оның гипотенузасын және ауданын табатын программа құр. A2+B2=C2; C=
PROGRAM Esep-1;
VAR
A,B,С,S:REAL; { айнымалыларды сипаттаймыз}
BEGIN
READ (A,B ); {айнымалыларды енгізу}
C:=SQRT(SQR(A)+SQR(B)); {есептеу}
S:=A*B/2;
WRITELN(‘S=’, S);
WRITELN ('C=',C); {Жауабын шығару}
END.
1.7- мысал. х және y нақты сандары берілген. есептейтін программа құр.
PROGRAM Esep-2;
VAR
X,Y,Z :REAL; { айнымалыларды сипаттаймыз}
BEGIN
WRITELN(‘X=’);
READ (X ); {X-ті енгіземіз}
WRITELN(‘Y=’);
READ (Y ); {Y-ті енгіземіз}
Z:=(ABS(X)-ABS(Y))/(1+ABS(X*Y));
WRITELN (' Z= ',Z);
END.
Достарыңызбен бөлісу: |