Составить три процедуры для двумерных массивов 2)поиск макс. элемента (выводим в два одномерных массива максимальные значения по строкам и столбцам) 3)сортировка(как душе угодно) 4)поиск по условию (есть определенное значение или нет)
254
401
Ответы на вопрос:
Конечно, на основе функций решение было бы элегантнее, но требовались // pascalabc.net 3.2, сборка 1417 от 28.03.2017 // внимание! если программа не работает, обновите версию! procedure getmax(a: array[,] of integer; var mr,mc: array of integer); // максимумы по строкам mr и столбцам mc begin mr: =a.rows.select(r-> r.max).toarray; mc: =a.cols.select(c-> c.max).toarray; end; procedure matrsort(a: array[,] of integer); // сортировка срок по первой колонке begin for var i: =0 to a.rowcount-2 do for var k: =0 to a.rowcount-2-i do if a[k,0]> a[k+1,0] then a.swaprows(k,k+1); end; procedure iscont(n: integer; a: array [,] of integer; var res: boolean); // есть ли элемент n в массиве a? begin res: =a.elementsbyrow.contains(n) end; begin var n: =readinteger('количество строк в массиве: '); var m: =readinteger('количество столбцов в массиве: '); writeln('*** исходный массив [',n,',',m,'] ***'); var a: =matrrandom(n,m,-99,99); a.println(4); writeln(4*a.colcount*'-'); var vr: =new integer[n]; var vc: =new integer[m]; getmax(a,vr,vc); write('вектор максимумов по строкам: '); vr.println; write('вектор максимумов по столбцам: '); vc.println; matrsort(a); writeln('*** отсортированный массив ***'); a.println(4); writeln(4*a.colcount*'-'); var k: =readinteger('введите значение элемента для поиска: '); var q: boolean; iscont(k,a,q); if q then writeln('массив содержит введенное значение') else writeln('массив не содержит введенного значения') end. пример количество строк в массиве: 4 количество столбцов в массиве: 7 *** исходный массив [4,7] *** -96 63 6 -96 -21 -61 -54 31 -20 63 -48 70 13 48 72 -27 -68 -52 32 15 -58 -71 -86 45 49 40 -64 -2 вектор максимумов по строкам: 63 70 72 49 вектор максимумов по столбцам: 72 63 63 49 70 15 48 *** отсортированный массив *** -96 63 6 -96 -21 -61 -54 -71 -86 45 49 40 -64 -2 31 -20 63 -48 70 13 48 72 -27 -68 -52 32 15 -58 введите значение элемента для поиска: 70 массив содержит введенное значение
Реши свою проблему, спроси otvet5GPT
-
Быстро
Мгновенный ответ на твой вопрос -
Точно
Бот обладает знаниями во всех сферах -
Бесплатно
Задай вопрос и получи ответ бесплатно
Популярно: Информатика
-
Nastyadavydenko12.10.2020 14:27
-
XASSA29.11.2020 19:51
-
захар18228.06.2021 10:31
-
svetlana1980ang22.12.2022 03:52
-
рус24818.08.2022 15:33
-
lizniki8217.02.2022 17:17
-
Karinarikfeeet24.06.2021 05:00
-
v063203981309.06.2023 16:07
-
лошжо17.03.2022 13:35
-
isshaixyt511.02.2023 02:49
Есть вопросы?
-
Как otvet5GPT работает?
otvet5GPT использует большую языковую модель вместе с базой данных GPT для обеспечения высококачественных образовательных результатов. otvet5GPT действует как доступный академический ресурс вне класса. -
Сколько это стоит?
Проект находиться на стадии тестирования и все услуги бесплатны. -
Могу ли я использовать otvet5GPT в школе?
Конечно! Нейросеть может помочь вам делать конспекты лекций, придумывать идеи в классе и многое другое! -
В чем отличия от ChatGPT?
otvet5GPT черпает академические источники из собственной базы данных и предназначен специально для студентов. otvet5GPT также адаптируется к вашему стилю письма, предоставляя ряд образовательных инструментов, предназначенных для улучшения обучения.