Крамер формулалары

Автор: Пользователь скрыл имя, 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 Құрама шарттар
ҚОРЫТЫНДЫ
ҚОЛДАНЫЛҒАН ӘДЕБИЕТТЕР
ҚОСЫМША

Работа содержит 1 файл

крамер.doc

— 273.00 Кб (Скачать)

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 мысал. Функцияның   мәндерін  есептеу   алгоритмін жазыңдар.

                                         õ<2 ,ó=õ2

                               y=   ó=4, õ<3, ó=3

                                      õ>3, ó=2(õ-1) 

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  т.б.  Олардың   атын   басқа   мақсаттарға   пайдалануға болмайды. Оларды   басқа символдарды

      Паскаль тілінде программа жазғанда мынадай мәселелерді ескеру керек:

  1. Басқа тілдердегідей Паскаль тілінде де "қызметші сөздер "  бар. Мысалы: begin, end т.б. Олардың атын басқа мақсаттарға пайдалануға болмайды. Оларды басқа символдардан ажырату үшін ерекше әріптермен жазады, ал жазбаша программа құрған кезде олардың астын сызып отырады.
  2. Паскальдың кейбір варианттарында бас әріптер мен кіші әріптер өзара ажыратылмайды. Мысалы: А, а әріптері бірдей таңба болып есептеледі.
  3. Программаның көпшілігінде айнымалылар, константалар, процедуралар бір-бірімен бірінші алты немесе сегіз символ арқылы ажыратылады. Сондықтан ұзындығы 6-8 символдан көп айнымалылардың, константалардың, процедуралардың қажеті шамалы.
 
 
 
 
 
 
 
 
 
 
 
 
 

ҚОЛДАНЫЛҒАН ӘДЕБИЕТТЕР 

  1. Лапчик  М.М. «Вычисления. Алгоритмизация. Программирование» Москва «Просвещение»  1988г.
  2. Гусева А.Н.  « Учимся информатике: задачи и методы их решения» Диалог - МИФИ 1988 г.
  3. И.А. Бабушкин, Н.А. Бушмелева, С.М. Окулов, С.Ю. Черных «Практикум по Турбо Паскалю» Выпуск 1,2,3  № 44,46,48 1997 г.
  4. Н. Культин «Турбо Паскаль для начинающих» БХВ –      Петербург 2000 г.
  5. С.А. Абрамов, Г.Г. Гнездилова, Е.Н. Капустина, М.И. Селюн «Задачи по программированию» Москва «Наука» 1988 г.
  6. Н. Культин «С++ в примерах и задачах »  БХВ –      Петербург 2000 г.
 
 
 
 
 
 
 
 

ҚОСЫМША

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('****************Kramer****************');

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]*g1;

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. 
 
 


Информация о работе Крамер формулалары