Автор: Пользователь скрыл имя, 16 Апреля 2012 в 10:04, курсовая работа
Паскаль тілін 1973 жылы швейцар математигі Никлаус Вирт жасап шығарады да, атақты француз математигі, физигі, философы және алғашқы есептеу машинасы - арифмометрді /1641/ жасаған Блез Паскальдің құрметіне "Паскаль" деп ат қойды.
КІРІСПЕ
I. ЕСЕПТІҢ БЕРІЛУІ. КРАМЕР ФОРМУЛАЛАРЫ
II. ЕСЕПТІ ШЕШУДЕГІ ҚОЛДАНЫЛҒАН ПРОГРАММАЛАУ
ОРТАСЫ. ТУРБО ПАСКАЛЬ ПРОГРАММАЛАУ ТІЛІ.
2.1. Компьютерді Турбо Паскальда жұмыс істеуге даярлау
2.2. Паскаль тілінің негізгі элементтері
2.3. Бағыттаушы қызметші сөздер
2.4. Сипаттаушы қызметші сөздер
2.5. Стандартты функциялар
2.6. Паскаль тілінде программалау. Программа құрылымы. Қарапайым программ
2.7 Берілгендерді сипаттау
2.8 Сызықтық алгоритм
2.9. Шартты Оператор. Жай Шарт.
2.10 Құрама оператор
2.11 Құрама шарттар
ҚОРЫТЫНДЫ
ҚОЛДАНЫЛҒАН ӘДЕБИЕТТЕР
ҚОСЫМША
uses crt;
var a,в,с,d,х1,х2: real;
begin clrscr: write (‘а,в,с=’);
readen (а,в,с); d:=в*в-4*а*c
if d<0 then write (‘нақты облыста түбір жоқ’)
else begin
x1:= (-в+sqr(d))/(2*а);
x2:= (-в-sqr (d))/(2*a);
write (‘х1=’,х1:5:3,’ x2=’, x2:5:3)
end.
Программа
then - нен соң екі оператор
енгізілгендіктен, олар begin-end операторлық
жақшаларына алынады.
2.11 Құрама шарттар
2.6 мысал. I облыста М(х,у) нүктесі радиусы 5-ке тең дөңгелекте жататынын анықтайтын тексері керек.
Программа:
Program D1 ;
uses crt ;
var x, y: real;
begin clrscr;
writeln (‘x, y=?’); readln(x,y);
if (x*x+y*y <=25) and (x>=0)
and (y>=0) then write (‘ true’)
else write (‘false’)
end.
2.7 мысал. Функцияның мәндерін есептеу алгоритмін жазыңдар.
y= ó=4, õ<3, ó=3
program мән; uses crt;
var x,y: real;
begin clrscr;
read(x);
if x<2.0
then y:=x*x
else if x<3.0
then y:=4.0
else y:=2*(x-1);
write (¢y=¢,y)
end .
2.8 мысал. Қайсыбір айнымалы литерлік шама латын алфавитінің әрпі екендігін анықтайтын программа жазыңдар.
Программа:
program латын;
var sim: char;
begin
read(sim); (*Char типі реттелгендіктен, шарт былай жазылады*)
if (Sim >=¢A¢) and (Sim<=¢Z¢)
then
write (‘Sim’,Sim,’латын алфавитінің әрпі’ )
else write (¢символ латын алфатиінің әрпі емес¢)
end.
Есептер
шығару барысында екі емес,
көптеген варианттарды қарастыруға
тура келеді. Мұны бірнеше
шартты операторды пайдалану
арқылы іске асырылады. Мұндай
жағдайда then және else
қызметші сөздерінен кейін
жаңа шартты оператор
жазылады.
2.9- мысал. а, в,с бүтін сандары берілген. Егер а£в£с болса, онда барлық сандарды олардың квадраттарымен, егер а>в>с болса, онда олардың әрқайсысының ішіндегі үлкенімен алмастырыңдар, қарсы жағдайда әрқайсысының таңбасын өзертіңіз.
Шешуі:
Есептердің шартын төмендегідей етіп жазып көрейік:
егер а£в£с болса а:= а2, в:=в2, с:=с2,
егер а>в>с болса, онда а:=с, в:=с;
басқа жағдайда а:=-а, в:= в, с:= -с
program Esep;
var а,в,с: integer;
begin
writeln (‘а,в, с сандарын енгіз);
readln (a,в,с);
if (a£в) and (в£с)
then begin
a:= sqr (a); в: = sqr (в); c: = sqr (c)
end.
else if (а>в) and (в>c)
then begin a: =c; в:=c end;
else begin a:=-a; в:=- в; c:=-c end;
writeln ( a:3; в:3; c:3) ;
readln
end.
Ескерту.
Бірінің ішінде бірі орналастырылған
операторлар қысқартылған
шартты оператор болса ( біздің
қарастырылған мысалдағыдай),
онда шартты операторлардың
арасындағы шекара туралы
түсінбестік тууы мүмкін.
Мұндай жағдайда қызметші
сөз ең else жақын if -ке тиісті
деп есептеу керек.
ҚОРЫТЫНДЫ
Паскаль тілінде программа жазғанда мынадай мәселелерді ескеру керек:
1. Басқа тілдердегідей Паскаль тілінде де, "қызметші" сөздер бар. Мысалы: begin, end т.б. Олардың атын басқа мақсаттарға пайдалануға болмайды. Оларды басқа символдарды
Паскаль тілінде программа жазғанда мынадай мәселелерді ескеру керек:
ҚОЛДАНЫЛҒАН
ӘДЕБИЕТТЕР
ҚОСЫМША
uses crt;
var i,j,k,l,m,n,h,g1,g2:integer;
s,x1,x2,x3,d:real;
a:array[1..9,1..10] of integer;
x:array[1..9] of real;
begin
clrscr;
l:=0; h:=0;
writeln('****************
writeln('*****Vvedite razmer massiva*****');
write('n= ');
readln(n);
write('m= ');
readln(m);
writeln('*****Vvedite massiv *****');
for i:=1 to n do
for j:=1 to m do begin
write('a[',i,',',j,']= ');
readln(a[i,j]);
end;
clrscr;
writeln('*****Dano massiv*****');
for i:=1 to n do begin
for j:=1 to m do
write(a[i,j]:4);
writeln;
end;
writeln('*********************
writeln;
for i:=1 to n-1 do begin
l:=l+1;h:=h+1; g1:=-a[l,h];
for j:=h to n-1 do begin
g2:=a[j+1,i];
for k:=l to m do
a[j+1,k]:=a[i,k]*g2+a[j+1,k]*
end;
end;
{for i:=1 to n do begin
for j:=1 to m do
write(a[i,j]:4);
writeln;
end;}
writeln;
writeln;
writeln;
x[m-1]:=a[n,m]/a[n,n];
for i:=n-1 downto 1 do begin
s:=0;
for j:=i+1 to n do
s:=s+a[i,j]*x[j];
x[i]:=(a[i,m]-s)/a[i,i];
end;
for i:= 1 to n do
writeln('x[',i,']= ',x[i]:4:2);
readln;
end.