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

Нужно написать программа в Pascal: 1) В двумерном массиве найти произведение элементов главной диагонали

2) В двумерном массиве найти номер строки, в которой наибольшее количество чётных элементов

Очень надо ,

Показать ответ
Ответ:
Elizabet4722
Elizabet4722
13.05.2021 22:39

Программа 1:

{Free Pascal Compiler version 3.0.4+dfsg-23 [2019/11/25] for x86_64}

{Copyright (c) 1993-2017 by Florian Klaempfl and others}

{Target OS: Linux for x86-64}

program test;

const

 max_num = 100; {Максимальная величина в массиве}

var

 N : integer; {Размерность массива}

 Massiv : array of array of integer;

 i, j : integer; {Счетчики циклов}

 p : int64; {Произведение элементов}

begin

Randomize;

write('Введите число - размер массива N: ');

readln(N);

{Установка размера массива}

SetLength(Massiv, N, N);

{Формирование случайного двумерного массива с элементами от 1 до 100}

for i := 0 to N-1 do begin

 for j := 0 to N-1 do begin

  Massiv[i, j] := Round(Random * max_num) + 1;

  write(Massiv[i,j]:4)

 end;

 writeln

end;

 

 

p := 1; {Инициализация переменной для подсчета произведения}

{Собственно, сам подсчёт.}

{Для главной диагонали особенность индексов, где i = j}

{Поэтому достаточно одного цикла}

for i := 0 to N-1 do

 p := p * Massiv[i, i];

writeln('Произведение р = ', p)

end.

Программа 2:

{Free Pascal Compiler version 3.0.4+dfsg-23 [2019/11/25] for x86_64}

{Copyright (c) 1993-2017 by Florian Klaempfl and others}

{Target OS: Linux for x86-64}

program test;

const

 max_num = 100; {Максимальная величина в массиве}

var

 N : integer; {Размерность массива}

 Massiv : array of array of integer;

 i, j : integer; {Счетчики циклов}

 c, m, k : integer; {Подсчёт чётных элементов}

begin

Randomize;

write('Введите число - размер массива N: ');

readln(N);

{Установка размера массива}

SetLength(Massiv, N, N);

{Формирование случайного двумерного массива с элементами от 1 до 100}

for i := 0 to N-1 do begin

 for j := 0 to N-1 do begin

  Massiv[i, j] := Round(Random * max_num) + 1;

  write(Massiv[i,j]:4)

 end;

 writeln

end;

{Обнуление счётчиков}

m := 0; k := 0;

for i := 0 to N-1 do begin

 {Подсчёт чётных в строке i}

 c := 0;

 for j := 0 to N-1 do

  if (Massiv[i, j] mod 2 = 0) then Inc(c);

 

 {Если чётных больше, чем в предыдущих строках, то}

 if (c > m ) then begin

  {запоминаем номер строки в переменной k}

  k := i;

  {запоминаем текущее количество чётных}

  m := c

 end

end;

writeln('Чётных чисел больше в строке ', k,'. Их - ', m)

end.


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