Кабинет Информатики

Понедельник, 21.01.2019, 10:32
Меню сайта
Наш опрос
В какой социальной сети Вы проводите больше времени?
Всего ответов: 220
Новости...
Конкурсы
Позитивный контент-2017

Победитель Общероссийского рейтинга школьных сайтов
Знак качества Просвещения

Фонд 21 века
Рейтинг образовательных сайтов mega-talant.com
Эволюция - бесплатные конкурсы для педагогов и школьников
Фонд 21 века
Статистика

Онлайн всего: 1
Гостей: 1
Пользователей: 0

Besucherzahler
счетчик посещений
Среднее и дошкольное образование Центр профессионального роста Содружество

Проголосуй за наш сайт
Каталог webplus.info
Форма входа

Обработка массивов

Двумерные массивы

Алгоритмы нахождения наибольшего и наименьшего элементов двумерного массива

Задача 1. В соревнованиях по плаванию принимали участие 5 спортсменов. Соревнования состояли из 3 заплывов. Результаты заплывов записали в таблицу размерностью 3х5. Получить одномерный массив размером 3, элементами которого будут  лучшие результаты в каждом из заплывов. 

 USES Crt;
 VAR
   RZ:ARRAY[0..3,0..5] OF INTEGER; LR:ARRAY[0..3] OF INTEGER;
   I,J:BYTE;
BEGIN
   ClrScr;   WriteLn;
   { Заполнение таблицы }
   FOR I:=1 TO 3 DO Begin
     WriteLn(' Введите результаты ',I,' заплыва');
     FOR J:=1 TO 5 DO Begin
       Write(J,' участник - ');   ReadLn(RZ[I,J]);
     End;
   End;   WriteLn;
   { Определение лучшего результата в каждом из заплывов }
   FOR I:=1 TO 3 DO Begin
     LR[I]:=RZ[I,1];
     FOR J:=2 TO 5 DO
       IF RZ[I,J]<LR[I] THEN LR[I]:=RZ[I,J];
     WriteLn(' Лучший результат ',I,' заплыва = ',LR[I]);
   End;
 END.

Задача 2. Дан двумерный массив размерностью 5х6, заполненный целыми числами. Сформировать одномерный массив, каждый элемент которого равен наибольшему по модулю элементу соответствующего столбца.

 USES Crt;
 VAR
   M:ARRAY[0..5,0..6] OF INTEGER;   MAX:ARRAY[0..6] OF INTEGER;
   I,J:BYTE;
 BEGIN
   ClrScr;   Randomize;
   { Заполнение двумерного массива случайным образом и вывод в виде прямоугольной матрицы }
   WriteLn(' Значения элементов двумерного массива');
   FOR I:=1 TO 5 DO Begin
     FOR J:=1 TO 6 DO Begin
       M[I,J]:=Random(20)-8;  Write(M[I,J]:3);
     End;     WriteLn;
   End;   WriteLn;
   { Формирование одномерного массива}
   WriteLn(' Значения элементов одномерного массива');
   FOR J:=1 TO 6 DO Begin
     MAX[J]:=ABS(M[1,J]);
     FOR I:=2 TO 5 DO
       IF ABS(M[I,J]) > MAX[J] THEN MAX[J]:=ABS(M[I,J]);
     Write(MAX[J]:3);
   End;
 END.

Задача 3. Дан двумерный массив размерностью NхM, заполненный случайным образом. Определить, есть ли в данном массиве строка, в которой имеется два элемента массива, имеющие наибольшее значение.

 USES Crt;
 CONST   N=6;   M=8;
 VAR
   A:ARRAY[0..N,0..M] OF INTEGER;
   I,J,K,FL:BYTE;   MAX:INTEGER;
 BEGIN
   ClrScr;   Randomize;
   { Заполнение двумерного массива случайным образом и вывод в виде прямоугольной матрицы }
   WriteLn(' Значения элементов двумерного массива');
   FOR I:=1 TO N DO Begin
     FOR J:=1 TO M DO Begin
       A[I,J]:=Random(20);   Write(A[I,J]:3);
     End;     WriteLn;
   End;   WriteLn;
   { Нахождение наибольшего значения }
   MAX:=A[1,1];
   FOR I:=1 TO N DO
     FOR J:=1 TO M DO
       IF A[I,J]>MAX THEN MAX:=A[I,J];
   WriteLn(' Максимальное значение = ',MAX);
   { Нахождение строки, в которой два элемента имеют наибольшее значение }
   FL:=0;
   FOR I:=1 TO N DO Begin
     K:=0;
     FOR J:=1 TO M DO
       IF A[I,J]=MAX THEN Inc(K);
     IF K=2 THEN Begin WriteLn('В ',I,' строке два элемента имеют наибольшее значение');                                      
                                      FL:=1;
     End;
   End;
   IF FL=0 THEN WriteLn(' Нет строк, в которых два элемента имеют наибольшее значение');
 END.
.....................................................................................................................................
Практические задания
.....................................................................................................................................

  1. Дан двумерный массив размерностью 5x7, заполненный случайным образом. Найти наименьший и наибольший элементы двумерного массива, поменять их местами.
  2. Дан двумерный массив размерностью NxM, заполненный случайным образом. Получить одномерный массив, элементами которого являются  сумма наименьшего и наибольшего элементов соответственной строки двумерного массива.
     
Поиск
Календарь
«  Январь 2019  »
ПнВтСрЧтПтСбВс
 123456
78910111213
14151617181920
21222324252627
28293031


Социальные сети
Портфолио

Полезные ссылки
  • Учительский портал
  • Педсовет.ORG
  • Дневник.ру
  • ProШколу.ru
  • Pedsovet.su
  • Завуч.инфо
  • Методисты.ру
  • Методсовет
  • УчМет
  • ИнформатикУрок
  • Менеджер образования
  • Сеть творческих учителей
  • Сообщество учителей ИКТ


  • Узнай свой IP адрес
    Перечень олимпиад на 2017-2018 учебный год







    Портал о суевериях, поверьях и приметах народов России