Автор: Пользователь скрыл имя, 13 Мая 2012 в 15:31, курсовая работа
Персональные компьютеры – это универсальные устройства для обработки информации, они могут выполнять любые действия в этом направлении. Но для этого надо составить для компьютера на понятном ему языке точную и подробную программу.
Введение 5
1. Теоретическая часть 6
1.1. Постановка задачи 6
1.2. Описание языка программирования 6
2. Экспериментальная часть 16
2.1. Описание структурной схемы алгоритма 16
2.2. Описание программного кода 20
2.3. Ход отладки программы и контрольный пример 21
Заключение 23
Список литературы 24
Приложение(листинги программ) 25
for i:=1 to M do
begin
B[i,j]:=A[i,j]*min;
end;
end;
end;
Procedure obrvek (H: matric; str,l:integer; nazv:char);
Begin
TextColor(2);
write('vektor ',nazv,'=');
TextColor(4);
write('{');
for j:=1 to N do
begin
G[j]:=B[str,j];
write(G[j]);
if j<N then
write(',');
delay(200);
end;
write('}');
end;
procedure summa(G: vektor; l:integer);
var s,r: integer;
begin
sum:=0;
r:=0;
s:=0;
for j:=l downto 1 do
if G[j]=0 then s:=j;
for j:=l downto s+1 do
if G[j]=0 then r:=j;
for j:=s+1 to r-1 do
sum:=sum+G[j];
if r=0 then sum:=0;
if r=s+1 then sum:=0;
TextColor(2);
write(' summa=');
TextColor(4);
write(sum);
end;
procedure proizvedenie(G: vektor; l:integer);
var s,r: integer;
begin
proizv:=1;
r:=0;
s:=0;
for j:=l downto 1 do
if G[j]=0 then s:=j;
for j:=l downto s+1 do
if G[j]=0 then r:=j;
if r=0 then proizv:=0;
if r=s+1 then proizv:=0;
for j:=s+1 to r-1 do
proizv:=proizv*G[j];
TextColor(2);
write(' proizvedenie=');
TextColor(4);
write(proizv);
writeln;
end;
procedure sohranvfile (H: matric; M,N:integer);
var
f: text;
begin
assign(f,'rezultat.txt');
rewrite(f);
For i:=1 to M do
begin
For j:=1 to N do
begin
write(f,H[i,j]:4);
end;
writeln(f,'');
end;
close(f);
writeln;
TextColor(2);
Write('Massiv uspeshno sohranen v faile ');
TextColor(4);
Writeln('"rezultat.txt"');
TextColor(2);
Writeln('Dla vozvrata v menu najmite Enter');
Readln;
end;
procedure vihod;
Begin
Ch:=#27;
End;
BEGIN
Menu;
Repeat
Ch:=ReadKey;
Case Ch of
#80:Begin
Case TecDeystvie of
1:Begin
TecDeystvie:=tecdeystvie+1;
SetTextStyle(3, 0 ,0);
SetColor(2);
OutTextXY(300,200,'Постановка задачи');
SetColor(4);
OutTextXY(300,250, 'С клавиатуры');
End;
2:Begin
TecDeystvie:=tecdeystvie+1;
SetTextStyle(3, 0 ,0);
SetColor(2);
OutTextXY(300,250, 'С клавиатуры');
SetColor(4);
OutTextXY(300,300, 'Случайным образом');
End;
3:Begin
TecDeystvie:=TecDeystvie+1;
SetColor(2);
OutTextXY(300,300, 'Случайным образом');
SetColor(4);
OutTextXY(300,350, 'Из файла');
End;
4:Begin
TecDeystvie:=Tecdeystvie+1;
SetColor(2);
OutTextXY(300,350, 'Из файла');
SetColor(4);
OutTextXY(300,400, 'Выход');
End;
5:Begin
TecDeystvie:=1;
SetColor(2);
OutTextXY(300,400, 'Выход');
SetColor(4);
OutTextXY(300,200,'Постановка задачи');
End;
End;
End;
#72:Begin
Case TecDeystvie of
1:Begin
TecDeystvie:=Tecdeystvie+4;
SetColor(2);
OutTextXY(300,200,'Постановка задачи');
SetColor(4);
OutTextXY(300,400, 'Выход');
End;
2:Begin
TecDeystvie:=Tecdeystvie-1;
SetColor(2);
OutTextXY(300,250, 'С клавиатуры');
SetColor(4);
OutTextXY(300,200,'Постановка задачи');
End;
3:Begin
TecDeystvie:=TecDeystvie-1;
SetColor(2);
OutTextXY(300,300, 'Случайным образом');
SetColor(4);
OutTextXY(300,250, 'С клавиатуры');
End;
4:Begin
TecDeystvie:=Tecdeystvie-1;
SetColor(2);
OutTextXY(300,350, 'Из файла');
SetColor(4);
OutTextXY(300,300, 'Случайным образом');
End;
5:Begin
TecDeystvie:=Tecdeystvie-1;
SetColor(2);
OutTextXY(300,400, 'Выход');
SetColor(4);
OutTextXY(300,350, 'Из файла');
End;
End;
End;
#13:Begin
Case TecDeystvie of
1:Begin
zadan;
menu;
End;
2:Begin
CloseGraph;
zapolnru(A,M,N);
TextColor(2);
writeln('poluchili massiv');
vivod(A,M,N);
TextColor(2);
writeln('massiv posle preobrasovanii');
preobraz(A,M,N,B);
vivod(B,M,N);
obrvek(B,1,N,'a');
summa(G,N);
proizvedenie(G, N);
obrvek(B,2,N,'b');
summa(G,N);
proizvedenie(G, N);
obrvek(B,3,N,'c');
summa(G,N);
proizvedenie(G, N);
obrvek(B,4,N,'d');
summa(G,N);
proizvedenie(G, N);
sohranvfile (B, M,N);
menu;
End;
3:Begin
CloseGraph;
Zapolnran(A,M,N);
TextColor(2);
writeln('poluchili massiv');
Vivod(A,M,N);
TextColor(2);
writeln('massiv posle preobrasovanii');
preobraz(A,M,N,B);
vivod(B,M,N);
obrvek(B,1,N,'a');
summa(G,N);
proizvedenie(G, N);
obrvek(B,2,N,'b');
summa(G,N);
proizvedenie(G, N);
obrvek(B,3,N,'c');
summa(G,N);
proizvedenie(G, N);
obrvek(B,4,N,'d');
summa(G,N);
proizvedenie(G, N);
sohranvfile (B, M,N);
menu;
End;
4:Begin
CloseGraph;
Zapolnizfile(A,M,N);
TextColor(2);
writeln('poluchili massiv');
Vivod(A,M,N);
TextColor(2);
writeln('massiv posle preobrasovanii');
preobraz(A,M,N,B);
vivod(B,M,N);
obrvek(B,1,N,'a');
summa(G,N);
proizvedenie(G, N);
obrvek(B,2,N,'b');
summa(G,N);
proizvedenie(G, N);
obrvek(B,3,N,'c');
summa(G,N);
proizvedenie(G, N);
obrvek(B,4,N,'d');
summa(G,N);
proizvedenie(G, N);
sohranvfile (B, M,N);
menu;
End;
5:vihod;
End;
End;
End;
Until ch=#27;
CloseGraph;
END.
10
Информация о работе Ход отладки программы и контрольный пример