Вопрос задан 29.08.2018 в 04:51. Предмет Информатика. Спрашивает Кочуров Илья.

Теперь с двумерным массивом =/ Дано: массивы A1(N,B), A2(N2,M2), A3(N3,M3). Сформировать одномерные

массивы B1,B2,B3, элементами каждого из которых являются количество единиц,двоек и троек в исходных массивах A1, A2, A3 соответственно. Формирование одномерного массива из трех элементов, содержащего количество единиц, двое и троек в исходном массиве, осуществить в подпрограмме и изобразить блоксхему.PascalABC, тут надо также : "неученым языком(начальным уровнем)" написать с подпрограммой через PROCEDURE.Уповаю на вашу помощь... Заранее спасибо!
0 0
Перейти к ответам

Ответы на вопрос

Внимание! Ответы на вопросы дают живые люди. Они могут содержать ошибочную информацию, заблуждения, а также ответы могут быть сгенерированы нейросетями. Будьте внимательны. Если вы уверены, что ответ неверный, нажмите кнопку "Пожаловаться" под ответом.
Отвечает Мельникова Света.
Type
  arr = array[,] of integer;
  arrB = array[1..3] of integer;
var
  i,  n, m: integer;
  A1, A2, A3: arr;
  B1, B2, B3: arrB;

procedure FormB(var A: arr;var B:arrB);
var  i, j, n, m: integer;
begin
  n:= Length(A,0);
  m:= Length(A,1);
for i := 0 to n-1 do
  begin
  for j := 0 to m-1 do
    begin
    A[i,j]:=random(10);
    write(A[i,j]:2);
    if A[i,j]=1 then B[1]:=B[1]+1;
    if A[i,j]=2 then B[2]:=B[2]+1;
    if A[i,j]=3 then B[3]:=B[3]+1
    end;
  writeln
  end
end;

begin
write('Введите N1 и M1:');
readln(n,m);
SetLength(A1, n, m);
FormB(A1,B1);
write('Число единиц, двоек и троек соответственно равно: ');
for i := 1 to 3 do write(B1[i]:4);
writeln;
write('Введите N2 и M2:');
readln(n,m);
SetLength(A2, n, m);
FormB(A2,B2);
write('Число единиц, двоек и троек соответственно равно: ');
for i := 1 to 3 do write(B2[i]:4);
writeln;
write('Введите N3 и M3:');
readln(n,m);SetLength(A3, n, m);
FormB(A3,B3);
write('Число единиц, двоек и троек соответственно равно: ');
for i := 1 to 3 do write(B3[i]:4)
end.

Сделал еще вариант с двумя процедурами:
type 
  arr = array[,] of integer;
  arrB = array[1..3] of integer;
var 
  A1, A2, A3: arr;
  B1, B2, B3: arrB;


procedure FormB(var A: arr;var B:arrB);
var  i, j, n, m: integer;
begin
for i:=1 to 3 do B[i]:=0;
n:= Length(A,0);
m:= Length(A,1);
for i := 0 to n-1 do
  begin
  for j := 0 to m-1 do
    begin
    A[i,j]:=random(10);
    write(A[i,j]:2);
    if A[i,j]=1 then B[1]:=B[1]+1;
    if A[i,j]=2 then B[2]:=B[2]+1;
    if A[i,j]=3 then B[3]:=B[3]+1
    end;
  writeln
  end
end;

procedure Inp(var A: arr;var B:arrB);
var i,n,m:integer;
begin
write('Введите N и M: ');
readln(n,m);
SetLength(A, n, m);
FormB(A,B);
write('Число единиц, двоек и троек соответственно равно: ');
for i := 1 to 3 do write(B[i]:4);
writeln
end;

begin
Inp(A1,B1);
Inp(A2,B2);
Inp(A3,B3)
end.
0 0
Отвечает нейросеть ChatGpt. Будьте внимательны, ответы нейросети могут содержать ошибочные или выдуманные данные.

Задача: Формирование одномерных массивов с количеством единиц, двоек и троек

Для решения данной задачи, нам необходимо сформировать три одномерных массива B1, B2 и B3, элементами которых будут являться количество единиц, двоек и троек в исходных массивах A1, A2 и A3 соответственно.

Алгоритм решения:

1. Создаем три одномерных массива B1, B2 и B3 с размерами 3 каждый, чтобы хранить количество единиц, двоек и троек соответственно. 2. Проходим по каждому элементу массива A1 и увеличиваем соответствующий элемент массива B1 в зависимости от значения элемента A1. 3. Проходим по каждому элементу массива A2 и увеличиваем соответствующий элемент массива B2 в зависимости от значения элемента A2. 4. Проходим по каждому элементу массива A3 и увеличиваем соответствующий элемент массива B3 в зависимости от значения элемента A3. 5. Возвращаем полученные массивы B1, B2 и B3.

Пример кода на PascalABC:

```pascal program Main;

const N = 4; // размер массива A1 N2 = 3; // размер массива A2 N3 = 5; // размер массива A3

type TArray = array[1..N] of Integer; TArray2 = array[1..N2, 1..N3] of Integer; TCountArray = array[1..3] of Integer;

procedure CountElements(const A1: TArray; const A2: TArray2; const A3: TArray2; var B1, B2, B3: TCountArray); var i, j: Integer; begin // Инициализация массивов B1, B2 и B3 for i := 1 to 3 do begin B1[i] := 0; B2[i] := 0; B3[i] := 0; end;

// Подсчет количества единиц, двоек и троек в массиве A1 for i := 1 to N do begin case A1[i] of 1: B1[1] := B1[1] + 1; 2: B1[2] := B1[2] + 1; 3: B1[3] := B1[3] + 1; end; end;

// Подсчет количества единиц, двоек и троек в массиве A2 for i := 1 to N2 do begin for j := 1 to N3 do begin case A2[i, j] of 1: B2[1] := B2[1] + 1; 2: B2[2] := B2[2] + 1; 3: B2[3] := B2[3] + 1; end; end; end;

// Подсчет количества единиц, двоек и троек в массиве A3 for i := 1 to N2 do begin for j := 1 to N3 do begin case A3[i, j] of 1: B3[1] := B3[1] + 1; 2: B3[2] := B3[2] + 1; 3: B3[3] := B3[3] + 1; end; end; end; end;

var A1: TArray; A2, A3: TArray2; B1, B2, B3: TCountArray; i: Integer; begin // Инициализация массива A1 A1[1] := 1; A1[2] := 2; A1[3] := 3; A1[4] := 1;

// Инициализация массива A2 A2[1, 1] := 1; A2[1, 2] := 2; A2[1, 3] := 3; A2[2, 1] := 1; A2[2, 2] := 2; A2[2, 3] := 3; A2[3, 1] := 1; A2[3, 2] := 2; A2[3, 3] := 3;

// Инициализация массива A3 A3[1, 1] := 1; A3[1, 2] := 2; A3[1, 3] := 3; A3[1, 4] := 1; A3[1, 5] := 2; A3[2, 1] := 1; A3[2, 2] := 2; A3[2, 3] := 3; A3[2, 4] := 1; A3[2, 5] := 2; A3[3, 1] := 1; A3[3, 2] := 2; A3[3, 3] := 3; A3[3, 4] := 1; A3[3, 5] := 2;

// Вызов подпрограммы для подсчета количества единиц, двоек и троек CountElements(A1, A2, A3, B1, B2, B3);

// Вывод результатов for i := 1 to 3 do begin writeln('B', i, ':'); writeln('Количество единиц: ', B1[i], ', количество двоек: ', B2[i], ', количество троек: ', B3[i]); end; end. ```

Блок-схема:

``` +-------------------+ | Начало | +-------------------+ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | |

0 0

Топ вопросов за вчера в категории Информатика

Последние заданные вопросы в категории Информатика

Задать вопрос