В двумерном массиве A(m,n) найти самое маленькое по модулю значение - Turbo Pascal

Узнай цену своей работы

Формулировка задачи:

Составить программу. Задача. В двумерном массиве A(m,n) найти самое маленькое по модулю значение и вычесть его из всех элементов массива.

Решение задачи: «В двумерном массиве A(m,n) найти самое маленькое по модулю значение»

textual
Листинг программы
  1. uses crt;
  2. const nmax=10;
  3. var a:array[1..nmax,1..nmax] of integer;//матрица максимально 10х10
  4.     m,n,i,j:byte; //размеры матрицы и счетчики циклов
  5.     mn:integer;//значение минимального по модулю элемента
  6. begin
  7. clrscr;
  8. randomize;
  9. repeat
  10. write('Количество строк до ',nmax,' m=');
  11. readln(m);
  12. until m in [1..nmax];
  13. repeat
  14. write('Количество столбцов до ',nmax,' n=');
  15. readln(n);
  16. until n in [1..nmax];
  17. writeln('Исходная матрица:');
  18. for i:=1 to m do
  19.  begin
  20.   for j:=1 to n do
  21.    begin
  22.     repeat
  23.     a[i,j]:=-50+random(101); //случайные целые чила от  -50 до +50
  24.     until a[i,j]<>0;{а то почти всегда минимальным по модулю будет 0}
  25.     write(a[i,j]:4);
  26.     if(i=1)and(j=1)then mn:=a[1,1]//если это первый элемент,то ом минимальный
  27.     else if abs(a[i,j])<abs(mn) then mn:=a[i,j];//если не первый и меньше минимального, то он минимальный
  28.    end;
  29.   writeln;
  30.  end;
  31. writeln('Минимальное по модулю=',mn);
  32. writeln('Измененный массив');
  33. for i:=1 to m do
  34.  begin
  35.   for j:=1 to n do
  36.    begin
  37.     a[i,j]:=a[i,j]-mn;//вычитаем из всех элементов минимальный
  38.     write(a[i,j]:4);
  39.    end;
  40.   writeln;
  41.  end;
  42. readln;
  43. end.

Объяснение кода листинга программы

  1. Создается матрица A размером до 10x10.
  2. Считывается количество строк и столбцов матрицы.
  3. Выводится исходная матрица.
  4. Для каждой строки матрицы:
    • Считывается значение i.
    • Для каждого столбца матрицы:
      • Считывается значение j.
      • Вычисляется и выводится значение a[i,j].
      • Если a[i,j] равно минимальному значению по модулю, то обновляется значение mn.
      • Если abs(a[i,j]) меньше abs(mn), то обновляется значение mn.
    • Выводится значение mn.
  5. Выводится измененный массив.
  6. Завершается программа.

ИИ поможет Вам:


  • решить любую задачу по программированию
  • объяснить код
  • расставить комментарии в коде
  • и т.д
Попробуйте бесплатно

Оцени полезность:

7   голосов , оценка 4.286 из 5

Нужна аналогичная работа?

Оформи быстрый заказ и узнай стоимость

Бесплатно
Оформите заказ и авторы начнут откликаться уже через 10 минут
Похожие ответы