помогите пожалуйста - очень много надо сделать, а я никак не могу разобраться...
завал..
уже башка не соображает...
мне нужно написать казалось бы простую прогу - есть два двумерных массива, нужно написать процедуры : лосования ( создания массива случайным выбором) , которая покажет его на экран, но а потом еще вызвать функцию ( или процедуру) суммы двух массивов ( я так понимаю, это как бы две копии одного массива) и умножения...
но все строго за "правилами" - нужно реализовать уже данное меню...
и я не совсем могу понять как вызивать эти функции...
помогите пожалуйста...
меня есть еще один вопрос, но такой,что даже стыдно на форуме спрашивать :-[
ведь это матрици - кажись простое =( нарыла прогу с первой листы,которую еще не сдала.. и застряла..
где-то что-то упустила.. а ведь дальше все в файлах и графике уже решать =\ а есть только неделя...
так вот, я написала (почти написала прогу)..
нужно умножить и додать две матрицы... но все строго за меню главной функции..
я не могу понять как сделать,чтобы вызвать ф-ю лосовых (случайных) чисел.. но чтобы потом этот массив использували остальные....
и например,почему при вызове есть (а,а,с,н)...
не мог понять как задекларировать - компилятору не нравиться...
Код: Выделить всё
[PASCAL] Program tablica;
uses Crt;
const n=10;
type tab = array [1..n, 1..n] of integer;
var i,j,k: integer;
s:integer;
a,c:tab;
procedure losujTab (var a : tab; n:integer);
var i,j : integer;
begin
Randomize;
for i:=1 to n do
for j:=1 to n do
a[i,j] := Random (10);
writeln (a [i,j]:5);
end;
procedure wypiszTab ( a: tab; n:integer);
var i,j : integer;
begin
writeln ( ' TABLICA ');
writeln;
write (' |');
for i:=1 to n do write (i:5);
writeln;
write (' |');
for i:=1 to n do write ('-----');
writeln;
for j:=1 to n do
begin
write (j:5,'|');
for i:=1 to n do write (a[i,j]:5);
writeln;
end;
end;
procedure dodajTab (a: tab; c: tab; n:integer);
var i,j: integer;
begin
for i:=1 to n do
for j:=1 to n do
begin
c[i,j] := a[i,j]+ a[i,j];
Writeln (c [i,j]);
end;
end;
procedure mnozTab (a: tab; c: tab; n:integer);
var i,j: integer;
begin
for i:=1 to n do
for j:=1 to n do
begin
c[i,j] := a[i,j]*a[i,j];
Writeln (c [i,j]);
end;
end;
begin
losujTab ( a , n);
Writeln ('Wylosowane elementy tablicy : ');
wypiszTab (a,n);
dodajTab (a,a,c,n);
Writeln ('Suma: ');
wypiszTab (c,n);
mnozTab(a,a,c,n);
Writeln ('Iloczyn: ');
wypiszTab (a,n);
Write ('Nacisnij klawisz Enter');
Readln
end.[/PASCAL]