Вопрос задан 30.08.2018 в 10:35. Предмет Информатика. Спрашивает Побережська Настя.

Напишите программу на Паскале, которая в двумерном массиве находит самое большое значение и

элементы строки и столбца, на пересечении которых он стоит, делает нулевыми.Я начал решать, нашел максимальное значение в массиве, а вот дальше что-то не понял. Возьмите кол-во столбцов и строк по 5. Спасибо заранее. :)
0 0
Перейти к ответам

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

Внимание! Ответы на вопросы дают живые люди. Они могут содержать ошибочную информацию, заблуждения, а также ответы могут быть сгенерированы нейросетями. Будьте внимательны. Если вы уверены, что ответ неверный, нажмите кнопку "Пожаловаться" под ответом.
Отвечает Кот Тина.
Var max_i, max_j, j, columns, rows, i : integer;
arr: array[1..10,1..10] of integer;
Begin
  rows := random(8) + 2;
  columns := random(8) + 2;
  writeln(rows, columns);
 
  for i := 1 to rows do
    for j := 1 to columns do
      arr[i, j] := random(100);

  for i := 1 to rows do begin
    writeln();
    for j := 1 to columns do
      write(arr[i, j]:3);
  end;
  writeln();
  writeln();

  max_i:=1;
  max_j:=1;

  for i := 1 to rows do
    for j := 1 to columns do
      if arr[max_i, max_j] < arr[i, j] then begin
        max_i:=i;
        max_j:=j;
      end;

  for i := 1 to rows do
    if i <> max_i then
      arr[i, max_j] := 0;

  for j := 1 to columns do
    if j <> max_j then
      arr[max_i, j] := 0;

  for i := 1 to rows do begin
    writeln();
    for j := 1 to columns do
      write(arr[i, j]:3);
  end;
  writeln();
  writeln();
End.

0 0
Отвечает нейросеть ChatGpt. Будьте внимательны, ответы нейросети могут содержать ошибочные или выдуманные данные.

Вот пример программы на языке Паскаль, которая выполняет указанную задачу:

```pascal program FindMaxElement;

const ROWS = 5; COLS = 5;

type TwoDimArray = array[1..ROWS, 1..COLS] of Integer;

var arr: TwoDimArray; maxVal: Integer; rowWithMaxVal, colWithMaxVal: Integer; i, j: Integer;

procedure InitializeArray(var arr: TwoDimArray); begin for i := 1 to ROWS do begin for j := 1 to COLS do begin arr[i, j] := Random(100); // Заполняем массив случайными значениями от 0 до 99 end; end; end;

procedure FindMaxValuePosition(var arr: TwoDimArray; var maxVal, rowWithMaxVal, colWithMaxVal: Integer); begin maxVal := arr[1, 1]; rowWithMaxVal := 1; colWithMaxVal := 1;

for i := 1 to ROWS do begin for j := 1 to COLS do begin if arr[i, j] > maxVal then begin maxVal := arr[i, j]; rowWithMaxVal := i; colWithMaxVal := j; end; end; end; end;

procedure SetRowAndColumnToZero(var arr: TwoDimArray; row, col: Integer); begin for i := 1 to COLS do begin arr[row, i] := 0; // Обнуляем элементы строки end;

for i := 1 to ROWS do begin arr[i, col] := 0; // Обнуляем элементы столбца end; end;

procedure PrintArray(var arr: TwoDimArray); begin for i := 1 to ROWS do begin for j := 1 to COLS do begin Write(arr[i, j]:3); // Выводим элементы массива end; Writeln; end; end;

begin Randomize; // Инициализируем генератор случайных чисел

InitializeArray(arr); Writeln('Исходный массив:'); PrintArray(arr); Writeln;

FindMaxValuePosition(arr, maxVal, rowWithMaxVal, colWithMaxVal); Writeln('Максимальное значение: ', maxVal); Writeln('Строка с максимальным значением: ', rowWithMaxVal); Writeln('Столбец с максимальным значением: ', colWithMaxVal); Writeln;

SetRowAndColumnToZero(arr, rowWithMaxVal, colWithMaxVal); Writeln('Массив после обнуления строки и столбца:'); PrintArray(arr); end. ```

Пожалуйста, обратите внимание, что в программе используется процедура `Randomize` для инициализации генератора случайных чисел. Это необходимо для заполнения массива случайными значениями при помощи функции `Random(100)`.

0 0

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

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

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