Максимальные элементы столбцов матрицы
Найти максимальный элемент для каждого столбца матриц размерностью N строк M столбцов.
При переборе элементов матрицы по столбцам во внешнем цикле изменяется второй индекс, а во внутреннем — первый. Перед внутренним циклом предполагается, что первый элемент столбца двумерного массива — максимальный элемент данного столбца. Во внутреннем цикле, если обнаруживается, что текущий элемент больше уже найденного максимального, то значение переменной перезаписывается на него.
Найденный максимум сразу выводится на экран или может быть сохранен в отдельном одномерном массиве, размерность которого соответствует количеству столбцов матрицы.
const N = 5; M = 10; var arr: array[1..N, 1..M] of integer; max: integer; i,j: byte; begin randomize; for i := 1 to N do begin for j := 1 to M do begin arr[i, j] := random(100); write(arr[i, j]:4); end; writeln; end; for i := 1 to M do write(' --'); writeln; for j := 1 to M do begin max := arr[1, j]; for i := 2 to N do if arr[i, j] > max then max := arr[i, j]; write(max:4); end; writeln; end.
Пример выполнения программы:
9 1 39 91 65 93 88 87 75 25 16 96 90 17 99 36 53 72 41 3 82 62 14 53 47 52 73 17 21 39 56 52 41 24 83 45 48 12 85 55 76 31 54 47 71 13 66 84 94 8 -- -- -- -- -- -- -- -- -- -- 82 96 90 91 99 93 88 87 94 55
Как найти максимальный элемент в матрице
Пользователь
Регистрация: 10.04.2012
Сообщений: 12
Матрица. Максимальный элемент
Помогите пожалуйста найти максимальный элемент в заштрихованной области.
Изображения
1.jpg (8.3 Кб, 151 просмотров) |
АлександрМих |
Посмотреть профиль |
Найти ещё сообщения от АлександрМих |
Форумчанин
Регистрация: 22.09.2008
Сообщений: 791
42, точно Вам говорю.
Если Вы имеете в виду поиск максимального элемента выше главной диагонали в двумерном массиве, то вот (i — номер столбца, j — строки, сама диагональ в поиск тоже включена)
int **a; . int max = a[0][0]; for (int i = 1; i < n; ++i) < for (int j = 0; j max) max = a[i][j]; > >
Форматируйте код, будьте людьми.
Пользователь
Регистрация: 10.04.2012
Сообщений: 12
К рисунку выше:
Дана матрица вещественных чисел, размерность которой задается пользователем. Распечатать матрицу на экране и определи максимальный элемент, находящийся в заштрихованной области.
Помогите пожалуйста дальше застопорился
Исходник:
#include #include #include void main()
Последний раз редактировалось ACE Valery; 22.04.2012 в 19:27 .
АлександрМих |
Посмотреть профиль |
Найти ещё сообщения от АлександрМих |
Форумчанин
Регистрация: 18.02.2012
Сообщений: 155
Ar должен быть указателем на указатель
Похожие темы | ||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
Дана действительная матрица A размерности. Если минимальный элемент матрицы расположен над главной диагональю, а максимальный эл. | Anton94.by | Паскаль, Turbo Pascal, PascalABC.NET | 15 | 06.03.2012 23:37 |
Максимальный элемент матрицы | zzz.postalman | Паскаль, Turbo Pascal, PascalABC.NET | 4 | 01.05.2011 18:50 |
Матрица в С++. максимальный элемент каждого столбца. | Маргоша | Помощь студентам | 1 | 23.10.2010 19:50 |
Максимальный элемент матрицы | maloy-rom | Помощь студентам | 1 | 24.12.2009 00:17 |
Максимальный элемент матрицы | gessi | Паскаль, Turbo Pascal, PascalABC.NET | 2 | 14.09.2009 09:23 |
Как найти максимальный элемент матрицы на главной диагонали и ниже её?
Как найти максимальный элемент матрицы на главной диагонали и ниже её?
Матрица 5Х5.
Помогите пожалуйста.
- Вопрос задан более трёх лет назад
- 2822 просмотра
1 комментарий
Оценить 1 комментарий
Stalker_RED @Stalker_RED
Мне кажется, или я уже отвечал на этот вопрос?
Решения вопроса 1
На PascalABC.NET
program max_element; var matrix: array[0..4, 0..4] of integer; i, j: integer; max: integer; begin Randomize; // Заполнение матрицы for i := 0 to 4 do begin for j := 0 to 4 do matrix[i][j] := Random(10, 99); WriteLn(matrix[i]); end; i := 0; j := 0; max := matrix[i][j]; for j := 0 to 4 do for i := j to 4 do if max < matrix[i][j] then max := matrix[i][j]; WriteLn(max); end.
Ответ написан более трёх лет назад
Комментировать
Нравится 1 Комментировать
Как найти координаты максимального элемента матрицы?
фор за 1 проход может найти все 3 значения (5,1,2). решение в ответе проходит 4 ? раза. может ктонибудь проверить что быстрее ?
23 янв 2021 в 7:52
@Интик Встроенные функции быстрее, несмотря на то, что с их использованием нужно два прохода. Время 4.0; 0.44; 0.75 для квадратной матрицы 4000x4000, и использования for, ответов Danis и Zhihar соответственно
23 янв 2021 в 8:44
2 ответа 2
Сортировка: Сброс на вариант по умолчанию
def find_mountain(a): arr = max(a, key = max) return a.index(arr), arr.index(max(arr))
Отслеживать
ответ дан 23 янв 2021 в 7:25
19.5k 5 5 золотых знаков 22 22 серебряных знака 56 56 бронзовых знаков
алгоритм находит ВСЕ максимальные значения (все двумерные координаты максимальных значений)
arr = [[1, 3, 1], [3, 2, 5], [2, 2, 2], [1, 5, 1]] # найти максимальное значение max_value = max(max(arr, key=max)) # найти позиции res = [(obj[0], obj[1].index(max_value)) for obj in enumerate(arr) if max_value in obj[1]] print(res)
Отслеживать
ответ дан 23 янв 2021 в 8:02
37.1k 4 4 золотых знака 26 26 серебряных знаков 69 69 бронзовых знаков
-
Важное на Мете
Похожие
Подписаться на ленту
Лента вопроса
Для подписки на ленту скопируйте и вставьте эту ссылку в вашу программу для чтения RSS.
Дизайн сайта / логотип © 2023 Stack Exchange Inc; пользовательские материалы лицензированы в соответствии с CC BY-SA . rev 2023.10.27.43697
Нажимая «Принять все файлы cookie» вы соглашаетесь, что Stack Exchange может хранить файлы cookie на вашем устройстве и раскрывать информацию в соответствии с нашей Политикой в отношении файлов cookie.