Помощь - Поиск - Пользователи - Календарь
Полная версия: Дан массив M на N (m и N<=30)
Форум «Всё о Паскале» > Pascal, Object Pascal > Задачи
agressor
Дан массив m на n (m и n<=30) Добавить строку L .
Найти сумму всех элементов кратных 3.
Матрицу вювести два раза до и после.
Помогите пожалуйста.
volvo
agressor
Поиском пользовался? Такие задачи уже решались...
FreeMan
Цитата
Матрицу вювести два раза до и после.

Чё так? может лучше во время...
agressor
:molitva: VOLVO я не нашел. помоги последняя прога . завтра здавать ,сам до утра решать буду :molitva:
FreeMan
Добавить строку L. Куда добавить? в массив? вот без строки
Код
uses crt;
const
n=10;
m=10;
var
a:array [1..n,1..m] of word;
var i,j,count:word;
begin
randomize;
for i:=1 to n do
for j:=1 to m do a[i,j]:=random(1000);

for i:=1 to n do begin
for j:=1 to m do write( a[i,j],' ');
writeln;
end;

count:=0;
for i:=1 to n do
for j:=1 to m do if a[i,j] mod 3=0 then inc(count,a[i,j]);

for i:=1 to n do begin
for j:=1 to m do write( a[i,j],' ');
writeln;
end;

writeln;
writeln('summa ',count );
readln;
end.
klem4
посмотри тут : http://forum.pascal.net.ru/forum/index.php?showtopic=3797

оч похожа

Сумма кратных 3 :

Код

s:=0;
for i:=1 to n do
for j:=1 to m do
  if x[i,j] mod 3 = 0 then
    s:=s+x[i,j]
agressor
Надо добавить строку в матрицу.
FreeMan
поставь везде вместо m, m+1
klem4
Код
k:=n+1;
 for j:=1 to m do
  begin
     write('x[',k,',',j,']=');
     readln(x[k,j]);
  end;
klem4
Freeman, имеется ввиду добавить строку после вывода матрицы на экран как
тут : http://forum.pascal.net.ru/forum/index.php?showtopic=3797 добавлялся столбец.

agressor , вывод после добавления будет
Код

for i:=1 to k do
for j:=1 to m do...
agressor
Помогите решить с помощю процедуры :molitva:
klem4
Что именно должна выполнять процедура ? и зачем она тут нужна ?
Цитата
Помогите решить с помощю процедуры
volvo
Цитата(agressor @ 19.01.05 15:51)
Матрицу вювести два раза до и после.

Может это оформить как процедуру? Вывод матрицы?
agressor
Там задание на процедуры и функции. Ввод и вывод тоже через процедуру. Вывести матрицу до дабовления и после , и вывести сумму.
klem4
Ну чо вот так чтоли ??? smile.gif)) чушь полная smile.gif))

Код
uses crt;
type
  mass=array[1..30,1..30] of integer;
var x:mass;
  i,j,k,s,rnd,n,m:integer;

procedure input;
begin
   for i:=1 to n do
     begin
        for j:=1 to m do
         begin
            x[i,j]:=random(rnd);
            write(x[i,j]:2);
            write(' ');
         end;
      writeln;
  end;
end;
procedure newString;
begin
  k:=n+1;
   for j:=1 to m do
    begin
       write('x[',k,',',j,']=');
       readln(x[k,j]);
    end;
end;

procedure output;
begin
   for i:=1 to k do
    begin
       for j:=1 to m do
        begin
           write(x[i,j]:2);
           write(' ');
        end;
        writeln;
    end;
end;

function sum(x:mass):integer;
begin
  s:=0;
  for i:=1 to k do
   for j:=1 to m do
    if x[i,j] mod 3 = 0 then
      s:=s+x[i,j];
  writeln('s=',s);
end;

Begin
 clrscr;
 write('n=');readln(n);
 write('m=');readln(m);
 write('rnd=');readln(rnd);
 writeln;
 input;
 writeln;
 newstring;
 writeln;
 output;
 writeln;
 sum(x);
 repeat
  keypressed;
 until keypressed;
End.
Это текстовая версия — только основной контент. Для просмотра полной версии этой страницы, пожалуйста, нажмите сюда.