Автор работы: Пользователь скрыл имя, 24 Февраля 2013 в 14:04, курсовая работа
Паскаль тілінің шығу тарихына тоќталатын болсаќ. Алгоритмдік тіл АЛГОЛ 1950-60 жылдары шыќќан. Паскаль тілі осы АЛГОЛ-дың мұрагері болып табылады. Бұл тілді шығарған швейцардың ғалымы НИКЛАУС ВИРТ ол осы тілмен өз студенттерін үйреткісі келді.
КІРІСПЕ
3
1.
ТУРБО ПАСКАЛЬ ТІЛІНДЕГІ ПРОГРАММА ҚҰРЫЛЫМ
4
Метка бөлімі
5
Тұрақтылар бөлімі
6
Айнымалылар бөлімі
6
Операторлар бөлімі.
7
2.
БАСҚАРУШЫ ОПЕРАТОРЛАР
14
2.1. Ќұрама операторлар
14
2.2. Тармақталу операторы
16
2.2.1. Шартсыз кµшу операторы
16
2.2.2. Шартты операторлар
16
2.2.3.Таңдау операторы
18
2.3. Қайталану операторлары.
2.3.1. Цикл әзір
20
20
2.3.2. Цикл дейін.
21
2.3.3. Параметрлік қайталау.
21
3.
АЛГЕБРАЛЫҚ ТЕҢДЕУЛЕР ЖҮЙЕСІН ГАУСС ӘДІСІМЕН ШЕШУ.
23
ҚОРЫТЫНДЫ
27
ҚОЛДАНЫЛҒАН ӘДЕБИЕТТЕР
28
ҚОСЫМША
29
ГАУСС ӘДІСІМЕН ШЕШУ.
Жалпы түрде берілген (3.1) теңдеулер жүйесін қараймыз. Кері матрица әдісі мен Крамер формуласын белгісіздер саны мен белгісіздер саны өзара тең болғанда және жүйенің анықтаушы 0-ге болмаған жағдайда ғана қолдануға болады. Жалпы жағдайда көбінесе Гаусс әдісі қолданылады.
Гаусс әдісі деп белгісіздерді
біртіндеп табу әдісін айтады. Бұл
әдіс бойынша түрлендірулерді
матрицасын айтады
Сонымен, элементар түрлендірулер арқылы матрицасын сатылы түрге келтіреміз. Егер элементар түрлендіруді қолдану барысында жатық жолдың соңғы элементінен (бос мүшеден ) бас элементтері нөл санына тең болып шықса, онда берілген үйлесімсіз жүйе болады. Бұл жағдайда жүйенің шешімі дереу тоқтатамыз. Егер де элементар түрлендіру кезінде нөлдерден тұратын жатық жол щықса, ол жатық жөнінде элементар түрлендірудің анықтамасы бойынша матрица құрамынан алып тастаймыз. Кеңейтілген матрицаны сатылы түрге келтіргеннен кейін, ол арқылы теңдеулер жүйесін құрамы. Осы теңдеулер жүйесін соңғы теңдеуінен бастап бір-бірінен шешеміз. Егер соңғы теңдеуде бірнеше белгісіз болса, онда олардың біреуін басқалары арқылы шешеміз, яғни бір белгісіз басқасын белгілі деп жариялап, белгісіз айнымалыны белгілі айнымалылар арқылы өрнектейміз. Табылған белгісіздерді жоғарғы тұрған теңдеуге қойып, келесі белгісізді таба бастайды.
Осы процесті бірінші теңдеуге дейін жеткізіп, барлық белгісіздерді анықтаймыз. Енді осы Гаусс әдісін мысалдар көрсетелік.
Мысал:
теңдеулер жүйесін Гаусс әдісімен шешіңіз.
Шешуі. Жүйенің кеңейтілген матрицасын құрамыз;
Мұнда есептеуге ыңғайлы болу үшін бос мүшенің бағанасы басқа тік жолдарын түзу арқылы бөлініп тұр. Бірінші тік жолдың 2-ші, 3-ші және 4-ші элементтерін нөл жасау үшін 1-ші жатық жолды -2-ге көбейтіп 2-інші жатық жолға, 3-ке көбейтіп 3-інші жатық жолға және 2-інші жатық жолды 4-нші жатық жолға қосамыз:
Соңғы матрицада
екінші жатық жолға үшінші
жатық жолды, ал үшінші жатық
жолға 2-ге көбейтілген
Енді төртінші
жатық жолға екінші жатық
Үшінші жатық
жолды 5-ке бөліп жазамыз,
Жүйенің кеңейтілген
матрицасын баспалдақ түрге
Соңғы екі теңдеуден -пен -ті тауып, екінші теңдеуге қоямыз. сол сияқты...
Жауабы: (15;46;21;-20)
Мысал. Гаусс әдісімен
теңдеулер жүйесін шешіңіз.
Шешуі. Элементар
түрлендіру арқылы кеңтілген
матрицаны баспалдақ түріне
Соңғы жатық жол бойынша теңдеу құратын болсақ, 0=-3 шығады. Сондықтан берілген жүйе үйлесімсіз, яғни оның шешімі жоқ.
ҚОРЫТЫНДЫ
Жоғарыда паскаль тілінің негізгі операторларын қарастырдық. Бұл операторладың көмегімен әртүрлі қиындықтағы алгоритмдік тілде көрсетуге болатын, кез - келген программаны жазуға болады. Ал алгоритмдік тілде әртүрлі қиындықтағы есептерді көрсете аламыз.
Паскаль тілінің оңайлығы
оның алгаритмдік тілге
Гаус әдісімен теңдеулер жүйесін шешу үшін де қолайлы Турбо Паскаль ортасын таңдадым.
ҚОЛДАНЫЛҒАН ӘДЕБИЕТТЕР
1.Ғ.Ш.Тойкенов, Паскаль тілінде программалау, Алматы “Дәнекер” 2001 жыл.
2.В.Э.Фигурнов, IBM PC для пользователя.
3.Е.А.Бурин, Программирование на языке TURBO-PASCAL. Алматы 2000 год.
4.А.И.Марченко, Л.А.Марченко, TURBO PASCAL. Киев “Век+” 2000 год.
5.В.И.Грызлов, Т.П.Грызлова. TURBO PASCAL. Москва, ДМК, 1999 год.
6.Н.Б.Культин. “ Программирование в TURBO PASCAL 7.0 и Delphi.”
7.Л.М.Климова. PASCAL 7.0. Практическое программирование. Москва. 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('*****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;
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.