1: набрать и протестировать на компьютере программу, организующую ввод -вывод двумерного массива целых чисел 3х4. для ввода и вывода использовать процедуры, которые будут вызываться в основной программе. текст программы: program prim; type vector=array[1..3] of integer; matr=array[1..4] of vector ; var x: matr; {процедура ввода в режиме диалога} procedure wwod(var a: matr; name: char); begin for i: =1 to 3 do for j: =1 to 4 do begin write(name,'[',i,', j]='); readln(a[i,j]); end end; {процедура вывода} procedure wywod(a: matr); var i: integer; begin for i: =1 to 3 do begin for j: =1 to 4 do write(a[i,j]); writeln; end; end; {основная программа} begin wwod(x, 'x'); writeln ('ввод окончен.'); writeln ('вывод: '); wywod(x); end. 2: видоизменить программу, добавив в нее описание и вызов процедуры, преобразующей введенный массив по следующему правилу: каждый элемент массива увеличивается на 4 - a[i,j]: =a[i,j]+4; .

shatab228 shatab228    2   23.07.2019 01:10    0

Ответы
qwwwq0 qwwwq0  03.10.2020 11:15
1. Большое количество ошибок в приведенном коде.
- В нескольких местах в процедурах не описаны переменные i,j
- В циклах неверно указано условие окончание цикла
- Неправильно описаны переменные в заголовке процедур

2. После исправления ошибок и добавления процедуры P4 (вторая часть задания) код программы будет таким:

Program Prim;
  Type vector=array[1..4] of integer;
    matr=array[1..3] of vector ;
  Var x:matr;

{Процедура ввода в режиме диалога}
Procedure wwod(var a:matr; Name:char);
  var i,j:integer;
  Begin
    for i:=1 to 3 do
    for j:=1 to 4 do
      begin
        write(Name,'[',i,',', j,']=');
        readln(a[i,j]);
      end;
    End;

{Процедура вывода}
Procedure wywod(var a:Matr);
  Var i,j:integer;
  Begin
    for i:=1 to 3 do
      begin
        for j:=1 to 4 do
        write(a[i,j]);
        writeln;
      end;
  End;
{каждый элемент массива увеличивается на 4}

Procedure p4(var a:Matr);
  Var i,j:integer;
  Begin
    for i:=1 to 3 do
      begin
        for j:=1 to 4 do
          a[i,j]:=a[i,j]+4;
      end;
  End;

{основная программа}
Begin
  wwod(x, 'X');
  writeln ('Ввод окончен.');
  writeln ('Вывод: ');
  wywod(x);
  p4(x);
  wywod(x);
end.

Тестовое решение:
X[1,1]=2
X[1,2]=2
X[1,3]=2
X[1,4]=2
X[2,1]=2
X[2,2]=2
X[2,3]=2
X[2,4]=2
X[3,1]=2
X[3,2]=2
X[3,3]=2
X[3,4]=2
Ввод окончен.
Вывод:
2222
2222
2222

6666
6666
6666
ПОКАЗАТЬ ОТВЕТЫ
Другие вопросы по теме Информатика