Предмет: Информатика, автор: geniral2012

Теперь с двумерным массивом =/ 
Дано: массивы A1(N,B), A2(N2,M2), A3(N3,M3). Сформировать одномерные массивы B1,B2,B3, элементами каждого из которых являются количество единиц,двоек и троек в исходных массивах A1, A2, A3 соответственно. Формирование одномерного массива из трех элементов, содержащего количество единиц, двое и троек в исходном массиве, осуществить в подпрограмме и изобразить блоксхему.

PascalABC, тут надо также : "неученым языком(начальным уровнем)" написать с подпрограммой через PROCEDURE.Уповаю на вашу помощь... Заранее спасибо!

Ответы

Автор ответа: Аноним
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.
Автор ответа: geniral2012
0
Ух,Алекс,спасибо тебе,что потратил время на это! Мне это очень помогло!
Автор ответа: Аноним
0
Пожалуйста! )) Надеюсь, ошибок нет, а то в глазах уже от буковок рябит))
Автор ответа: geniral2012
0
Желаю вам выспаться=)
Автор ответа: Аноним
0
Спасибо))
Похожие вопросы
Предмет: Русский язык, автор: romangalicenko
Дорогие ребята, нижеприведенные упражнения очень нужные и важные.
Такого рода задання часто встречаются в диагностических работах
(ВПР, РДР, экзаменах ОГЭ и ЕГЭ). Постарайтесь выполнить их верно. В
случае затруднення обращайтесь к словарю или ресурсам портала
«Грамота.ру».
ЗАДАНИЕ 1. Подберите имена прилагательные к именам существительным
и составьте словосочетания. Укажите род имён существительных.
Токио, кофе, шампунь, жалюзи, рояль, рельс, туннель, тюль, такси, жюри,
мозоль, вермишель, вуаль, туфля, бра, безе, пенальти, ТЮЗ.
ЗАДАНИЕ 2. Запишите имена существительные в форме родительного
падежа множественного числа, вставляя пропущенные буквы.
C..поги, т..маты, к..нсервы, шарты, пол..тенца, б..тинки, манд..рины, ч.лки,
сва..ьбы, ябл..ки, блю..ца, запястья, граммы, носки, пом..доры, свечи, ябл..ни,
вафли, килограммы, серьги, пустыни, комментарии, туфли, доли, простыни,
абр..косы, договоры, сабли, с..веряне, с..лдаты, ущелья, плат..я, лист..я.
ЗАДАНИЕ 3. Поставьте имена существительные в форму именительного
падежа множественного числа. Укажите возможные варианты.
Адрес, бухгалтер, договор, лектор, торт, доктор, конструктор, директор,
инспектор, счёт, профессор, слесарь, шофёр.
Помогите плиз​
Предмет: Математика, автор: vi798555