Матрицамен Жұмыс

Автор работы: Пользователь скрыл имя, 03 Января 2014 в 22:41, курсовая работа

Краткое описание

Бағдарлама жазуда «алгоритм» ұғымы басты роль атқарады. Алгоритм – орындаушыға белгілі бір мақсатқа, нәтижеге жетуге арналып жазылған нұсқаулардың жүйеленген, әр қадамында бір әрекетті іске асыратын нұсқау оператор болып табылады. Команда бірнеше операторлар қоспасынан да тұруы мүмкін. Есептерді шығарғанда, алгоритм құрғанда белгілі бір ЭЕМ мен бағдарламалау тілінің мүмкіндіктерін ескеру керек. Бағдарлама бірнеше бөлімнен құралып жазылады: сипаттау бөлімі, процедуралар мен функциялар бөлімі, негізгі бөлім. Паскаль тіліндегі бағдарламада арнайы стандартты процедуралар қолданады. Процедура - аты бойынша қатынас құруға болатын операторлар тізбегі.Writeln процедурасы Паскальдың стандартты немесе тіркелген процедурасына жатады.

Содержание

КІРІСПЕ 4
1 ЖАЛПЫ БӨЛІМ 6
1.1 Пәндік аумақты сипаттау 6
1.2 Бағдарламалау тілінің элементтеріне шолу 12
2 АРНАЙЫ БӨЛІМ 18
2.1 Тапсырманың жалпы қойылымы 18
2.2 Құрылымдық және функционалдық сұлбалар 19
2.3. Модульдерді, процедуралар мен функцияларды сипаттау 25
2.4 Идентификатор кестесі 29
ҚОРЫТЫНДЫ 31
ПАЙДАЛАНҒАН ӘДЕБИЕТТЕР ТІЗІМІ 32
ҚОСЫМША А 33
ҚОСЫМША Б 35
ҚОСЫМШ В 36

Прикрепленные файлы: 1 файл

КУРСОВАЯ_МАТРИЦАМЕН ЖҰМЫС-исправ.doc

— 455.00 Кб (Скачать документ)

Бағдарламалық қамтамасыздандыру мінездемесі

 

Түрі

Мінездеме

Жалпы

Операциялық жүйе: Microsoft Windows ХР, Office XP

Арнайы

Басқару панелі


 

Техникалық қамтамасыздандыру  мінездемесі

 

Техникалық құрал атауы

Физикалық модуль

Мінездеме

ДЭЕМ–Intel Pentium 4

Аналық тақша

Процессор

ОЕСҚ

Video card

Монитор

Пернетақта

Тышқан

ATX Pentium 4

Intel, 1800 MHz

256 Mb

64 Mb

SVGA, 1280x1024

102 пернелік

2 батырмалық

Принтер

Принтер

HP LaserJet 1200

Сканер

Сканер

HP Sсan Jet 3200 C


 

3) Турбо Паскальда  жұмыс жасау интеграцияланған сайманды қабықшаны (терезе) пайдаланудан басталады. Ол терезе менюлер жолы, жұмыс алаңы және көмекші ақпараттар жолынан тұрады. Менюлер жолын активтендіруді тышқанмен немесе Ғ10 пернесін басу арқылы іске асырамыз. Менюлер жолында Windows стандарты терезесіндегіге ұқсас мынадай менюлер аттары орналасқан: File, Edit, Search, Run, Compile, Debug, Options, Window, Help.

Жұмыс алаңы – ортаңғы үлкен төртбұрыш. Алғаш жұмыс алаңын (бет) ашқанда оның үстіңгі жағында NONAME00 (аты жоқ) деген файл аты автоматты түрде жазылып шығады.

Көмекші ақпараттар жолында мына мәліметтер жазылып тұр:

F1 Help F2 Save F3 Open Alt-F9 Compile F9 Make F10 Menu

Бұл командаларды орындай  бастағанымызда, олар туралы түсініктер өзгеріп шығып отырады.

 

 

Қосымша Б

Қолданушы басшылығы

1) Бағдарлама Turbo Pascal 7.0 жасалынған және тестілік интерфейске ие.

а) Бағдарламаны жібергенде экранды тазалау жүреді, кейін бағдарлама массив өлшемін енгізуге сұраныс береді.

ә) Біздің жағдайда баған(жол) саны тақ  болуы қажет.

б) Бағдарламада қолданушы қате жібермес үшін қорғаныс қарастырылған. Егер қолданушы қателесіп бағанның(жолдың) санын жұп деп берсе, бағдарлама осы санды қайта енгізуді сұрайды. Қолданушы бағынға(жол) тақ сан бермегенше, осылай бола береді.

2) Өлшемді енгізгеннен  кейін бағдарлама экранға белгілі заңдылық бойынша автоматты түрде толтырылған бастапқы матрицаны шығарады. Матрицада берілген аймақтардың алмасуын жүргізеді және экранға өзгертілген матрицаны шығарады. Бағдарлама бір өлшемді массивке(жол-массив) мәнді жазумен берілген траектория бойынша матрицада айналып өтуді жүргізеді. Алынған жол-массивті бағдарлама экранға шығарады, одан кейін өсуі және кемуі бойынша берілген массивке іріктеу жүргізеді, нәтижесін экранға шығарады.

3) Аяқталу алдында бағдарлама  массивте берілген аймақтан басқа максимум және минимум элементтерді іздестіруді жүргізеді, табылған мәнді экранға шығарады және Enter клавишасын басуын күтеді. [11, б 345-347]

4) Бағдарламаның жұмыс істеу нәтижесінде экранда өзгергенге дейінгі және кейінгі матрицаны айқын көруге болады, траектория бойынша дұрыс өтуін және іріктеудің дұрыстығын тексеруге болады. Сонымен қатар бағдарлама text.txt файлға түрленген нәтижелер жазуын жүргізеді. Оның көмегімен бағдарламаның орындалу нәтижесін қарауға, басып шығаруға болады.

 

 

 

Қосымш В

Бағдарламаның листингі

 

Program matrix;

Uses crt;

var a:array[1..100,1..100] of real;

t,i,j,n:Integer;               {Бүтін сан}

tmp:real;                      {Нақты сан}

b:array[1..100] of real;{бұл массив траектория элементімен толтырылады}

f:text;

{+----- Массив өлшемін енгізу -----------+}

Procedure Input;

begin

Write(' Матрица өлшемін енгізігіз ');Readln(n);

if n mod 2 = 0 then begin

Writeln(' Қате: өлшем жұп сан болуы керек ');

input;

end;

end;

{+----- Массивті толтыру-----------------+}

Procedure zapolnenie (var n:integer);

Function f(x:real):Real;

begin

f:=sqr(cos(x+6)); {Берілген функция }

end;

var x0,xk:real;

begin

x0:=-pi;

xk:=x0;

for i:=1 to n do

for j:=1 to n do begin

xk:=f(xk);

a[i,j]:=xk;

end;

end;

{+-----Массивті экранға және файлға шығару ----+}

Procedure Out(var n:Integer);

begin

append(f);

writeln(f);

for i:=1 to n do begin

for j:=1 to n do

if a[i,j]<0 then begin

write(f,a[i,j]:3:3,' ');

write(a[i,j]:3:3,' ');

end

else begin

write(f,' ',a[i,j]:3:3,' ');

write(' ',a[i,j]:3:3,' ');

end;

Writeln(f,' ');

writeln;

end;

Close(f);

end;

{+----- Көрсетілген аймақтар орын алмастыру ---+}

Procedure obmen(var n:integer);

Var p:Integer;

begin

p:=n div 4+1;

for i:=n div 4+1 to n div 2+1 do begin

p:=p-1;

for j:=(n div 2+1)+p to n-p do begin

tmp:=a[i,j];

a[i,j]:=a[i+(n div 2),j-(n div 2)];

a[i+(n div 2),j-(n div 2)]:=tmp;

end;

end;

end;

{+-----Берілген траектория бойынша айналып өту ------+}

Procedure Obhod (var n :integer);

begin

t:=1;

append(f);

writeln(f);

j:=n div 4;

for i:=n div 4+1 downto 1 do begin

j:=j+1;

b[t]:=a[i,j];

t:=t+1;

end;

for i:=2 to n div 4+1 do begin

j:=j+1;

b[t]:=a[i,j];

t:=t+1;

end;

for i:=n div 4 +2 to n div 2+1 do begin

j:=j-1;

b[t]:=a[i,j];

t:=t+1;

end;

for i:=n div 2  downto n div 4+2 do begin

j:=j-1;

b[t]:=a[i,j];

t:=t+1;

end;

Writeln(' Берілген траектория бойынша айналып өту :');

for i:=1 to t-1 do begin

write(f,b[i]:3:3,' ');

write(b[i]:3:3,' ');

end;

close(f);

end;

{+----- Өсу бойынша іріктеу ---------+}

Procedure vozr(var n:integer);

begin

append(f);

writeln(f);

writeln(f);

writeln(' Өсу бойынша іріктеу: ');

for i=1 to t-1 do

for j:=1 to t-1 do begin

if b[i]<b[j] then begin

tmp:=b[i];

b[i]:=b[j];

b[j]:=tmp;

end;

end;

for i:=1 to t-1 do begin

write(f,b[i]:3:3,' ');

write(b[i]:3:3,' ');

end;

close(f);

end;

{+----- Кему бойынша іріктеу ------------+}

Procedure Ubiv(var n:integer);

begin

append(f);

writeln(f);

writeln(f);

writeln('Кему бойынша іріктеу : ');

for i:=1 to t-1 do

for j:=1 to t-1 do begin

if b[i]>b[j] then begin

tmp:=b[i];

b[i]:=b[j];

b[j]:=tmp;

end;

end;

for i:=1 to t-1 do begin

write(f,b[i]:3:3,' ');

write(b[i]:3:3,' ');

end;

close(f);

end;

{+-----  Максимум мен минимум табу ---+}

Procedure max_and_min (var n:integer);

var max,min:real;

p:integer;

begin

append(f);

writeln(f);

writeln(f);

writeln(f);

min:=a[1,1];

max:=a[1,1];

for i:=1 to n do

for j:=1 to n do

if (j<n div 2+1) and (i<n-i) then

if (j<n div 2+1) and ((i>n div 2+1) or (i<n-i)) then begin

if a[i,j]>max then max:=a[i,j];

if a[i,j]<min then min:=a[i,j];

end;

writeln('max=',max:3:3);

writeln('min=',min:3:3);

writeln(f,'max=',max:3:3);

writeln(f,'min=',min:3:3);

close(f);

end;

{+----- Бағдарламаның басы ------------------+}

begin

Clrscr;

assign(f,'text.txt');

rewrite(f);

input;

zapolnenie(n);

out(n); writeln;

obmen(n);

out(n); writeln;

obhod(n); writeln;

vozr(n); writeln;

ubiv(n); writeln;

max_and_min(n);

writeln;

Write('Шығу үшін Enter басыңыз');

readln; {Enter басуды күту}

end.

 

Бағдарламаны орындағаннан кейінгі нәтиже

Матрица өлшемін енгізіңіз: 3

 

0.922  0.645  0.875 

0.689  0.844  0.717 

0.823  0.735  0.809 

 

0.922  0.689  0.844 

0.000  0.823  0.735 

0.875  0.717  0.000 

 

Берілген траектория бойынша айналып өтуі:

 0.922 0.000      

               Өсуі бойынша іріктеу:

0.000 0.922

Кемуі бойынша іріктеу:

0.922 0.000

 

 

max=0.922

min=0.922

Шығу үшін Enter басыңыз




Информация о работе Матрицамен Жұмыс