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

Дан двумерный массив,найти максимальное и минимальное значение .я новенький в этом деле,вот попытался сам,посмотрите и обьясните что не правильно , . program zaza; var i,j,n,m,max,min: integer; a: array[1..10,1..10] of integer; begin writeln ('vvedite chislo n'); writeln ('vvedite chislo m'); for i: =1 to n do for j: =1 to m do begin writeln ('vvedite elementu massiva',i,j); end; for i: =1 to n do for j: =1 to m do begin if a[i,j] > max then max: = a[i,j]; if a[i,j] < min then min: =a[i,j]; end; writeln('max','min') end.

Показать ответ
Ответ:
matfeys
matfeys
01.10.2020 05:49

1) добавь строку для вывода результата в отдельном окне:
uses crt;
2) Размерность массива лучше сразу задать с пмомщью констант - потом если нужно будет решить ту же задачу для другого массива, просто поменяешь её на новую:
const n=10;
const m=10;
3) описание массива через константы:
a:array[1..n,1..m] of integer;  
4) после приглашения writeln ('vvedite chislo n') должен быть оператор readln. Но представь себе ситуацию: ты описал массив a:array[1..10,1..10], а пользователь ввёл n=12? Тогда обращение к a[12,1] выдаст ошибку. Поэтому лучше не просить вводить n и m вообще, а использовать const
5) пропущен оператор readln:
writeln ('vvedite elementu massiva',i,j);
если в условии задачи не сказано явно вводить с клавиатруы значения массива, лучше заполнять массив с вводить 100 чисел надоедает!)
randomize;
for i:=1 to n do
  for j:=1 to m do
      a[i,j]:=random(100);
6) перед тем , как просматривать весь массив в поисках мин и макс элементов, надо задать начальное значение min и max:
max:= a[1,1];
min:= a[1,1];
(дальше цикл поиска у тебя организован правильно)
7) writeln('max','min') - такая строка всегда печатает "maxmin"
Надо так:
writeln('max=',max,'   min=',min);
8) для наглядности можно вывести массив перед тем, как выводить max и min. Можно использовать тот же цикл, что и для поиска:
   write(a[i,j]:5); (здесь ":5" задаёт ширину вывода - на каждое число отводится 5 позиций)
9) скачай и установи себе PascalABC и запускай каждую написанную прогрмму - иначе не научишься.
 
В итоге получим:
Program zaza;
uses crt;
const n=10;
const m=10;
var
  i,j,max,min:integer;
  a:array[1..n,1..m] of integer;
begin
  randomize;
  for i:=1 to n do
    for j:=1 to m do
      a[i,j]:=random(100); {задаёт случайное число от 0 до 99}
  max:= a[1,1];
  min:= a[1,1];
  for i:=1 to n do
    begin
      for j:=1 to m do
        begin
          if a[i,j] > max then
            max:= a[i,j];
          if a[i,j] < min then
            min:=a[i,j];
          write(a[i,j]:5);  
        end;
      writeln(); {выводит пустую строку "для красоты"}
    end;
  writeln();
  writeln('max=',max,'   min=',min);
end.

0,0(0 оценок)
Ответ:
6561813
6561813
01.10.2020 05:49

uses crt; {вывод результата в отдельном окне}
var i,j,n,m,max,min:integer;  {ввод переменных}
a:array[1..10,1..10] of integer;  {ввод массива} 
begin
clrscr;  {очистка экрана вывода} 
writeln ('vvedite chislo n');  {выводим на экран сообщение}
read(n);  {вводим число} 
writeln ('vvedite chislo m');  {выводим на экран сообщение} 
read(m);  {вводим число} 
writeln ('vvedite elementu massiva');  {выводим на экран сообщение} 
for i:=1 to n do
for j:=1 to m do
begin  {откроем операторные скобки, чтобы каждый раз не задавать границы массива} 
readln(a[i,j]);  {вводим массив} 
max:=a[1,1];  {задаем значения для минимума и максимума для сравнения с другими элементами} 
min:=a[1,1];
if a[i,j] > max then
max:= a[i,j];
if a[i,j] < min then
min:=a[i,j];
end;  {закроем операторные скобки} 
writeln('max=',max,'min=',min);  {вывод на экран сообщения} 
end.

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