В
Все
М
Математика
О
ОБЖ
У
Українська мова
Д
Другие предметы
Х
Химия
М
Музыка
Н
Немецкий язык
Б
Беларуская мова
Э
Экономика
Ф
Физика
Б
Биология
О
Окружающий мир
Р
Русский язык
У
Українська література
Ф
Французский язык
П
Психология
А
Алгебра
О
Обществознание
М
МХК
В
Видео-ответы
Г
География
П
Право
Г
Геометрия
А
Английский язык
И
Информатика
Қ
Қазақ тiлi
Л
Литература
И
История
armanbolat98
armanbolat98
13.11.2022 21:17 •  Информатика

Сделать блок-схему цикла с постусловием

Показать ответ
Ответ:
valerapolnikov2
valerapolnikov2
13.11.2021 03:21
Type
  M = array[,] of integer; // двумерный динамический
  V = array[1..2] of integer; // одномерный статический

function nPos(pm: M): integer;
var
  i, j, p: integer;
begin
  p := 0;
  for i := 0 to Length(pm, 0) - 1 do
    for j := 0 to Length(pm, 1) - 1 do
      if pm[i, j] > 0 then p := p + 1;
  nPos := p
end;

function nNeg(pm: M): integer;
var
  i, j, p: integer;
begin
  p := 0;
  for i := 0 to Length(pm, 0) - 1 do
    for j := 0 to Length(pm, 1) - 1 do
      if pm[i, j] < 0 then p := p + 1;
  nNeg := p
end;

procedure GetV(A: M; var C: V);
begin
  C[1] := nPos(A);
  C[2] := nNeg(A)
end;

procedure InitM(var A: M);
var
  i, j: integer;
begin
  for i := 0 to Length(A, 0) - 1 do
    for j := 0 to Length(A, 1) - 1 do
      A[i, j] := random(100) - 50
end;

procedure PrintM(A: M);
var
  i, j: integer;
begin
  for i := 0 to Length(A, 0) - 1 do
  begin
    for j := 0 to Length(A, 1) - 1 do
      write(A[i, j]:4);
    writeln
  end
end;

var
  A1, A2, A3: M;
  B1, B2, B3: V;
  n1, m1, n2, m2, n3, m3: integer;

begin
  Randomize;
  writeln('Введите число строк и столбцов массива');
  readln(n1, m1);
  SetLength(A1, n1, m1);
  InitM(A1);
  Writeln('массив А1');
  PrintM(A1);
  GetV(A1, B1);
  writeln('Количество положительных ', B1[1], ', количество отрицательных ', B1[2]);
  writeln('Введите число строк и столбцов массива');
  readln(n2, m2);
  SetLength(A2, n2, m2);
  InitM(A2);
  Writeln('массив А2');
  PrintM(A2);
  GetV(A2, B2);
  writeln('Количество положительных ', B2[1], ', количество отрицательных ', B2[2]);
  writeln('Введите число строк и столбцов массива');
  readln(n3, m3);
  SetLength(A3, n3, m3);
  InitM(A3);
  Writeln('массив А3');
  PrintM(A3);
  GetV(A3, B3);
  writeln('Количество положительных ', B3[1], ', количество отрицательных ', B3[2]);
end.

Тестовый прогон:

Введите число строк и столбцов массива
3 3
массив А1
   6  11 -46
  24 -41  36
  44   9  18
Количество положительных 7, количество отрицательных 2
Введите число строк и столбцов массива
2 4
массив А2
  37  -4  -2  43
 -18  36   0  44
Количество положительных 4, количество отрицательных 3
Введите число строк и столбцов массива
5 2
массив А3
   5 -15
  49  -1
 -40  35
 -33  -9
 -22 -31
Количество положительных 3, количество отрицательных 7
0,0(0 оценок)
Ответ:
Karinakotik200165
Karinakotik200165
02.11.2021 01:48

№6 - 1,3,4,5

№7 - 1

№8 - 1,2,3,4

№9 -

=(B2-$C$1)*4

=(B3-$C$1)*4

№10 - 7,5

Объяснение:

№6- Формат записи адреса ячейки: БЦ, т.е.

Б - это буквенное обозначение столбца, а Ц - это номер строки.

№7 - Формула всегда начинается со знака равенства (=), за которым могут следовать числа, математические операторы, функции, которые значительно расширяют возможности формулы.

№8 - Смешанная ссылка содержит либо абсолютно адресуемый столбец и относительно адресуемую строку $А1, либо относительно адресуемый столбец и абсолютно адресуемую строку А$1.

№9 - $C$1 - Абсолютная ссылка (в формуле всегда ссылается на ячейку, расположенную в определённом (фиксированном) месте). Поэтому, при копировании будет изменяться только номер столбца B

№10 - В ячейке A1 число 5, в ячейке A2 число 10. Среднеарифметическое этих чисел равно (5+10)/2=7.5

0,0(0 оценок)
Популярные вопросы: Информатика
Полный доступ
Позволит учиться лучше и быстрее. Неограниченный доступ к базе и ответам от экспертов и ai-bota Оформи подписку
logo
Начни делиться знаниями
Вход Регистрация
Что ты хочешь узнать?
Спроси ai-бота