Массив: Написать функцию поиска максимума на диагональном кресте. - C (СИ)
Формулировка задачи:
Имеется матрица M*N элементов. Заполнить матрицу случайными числами от 0 до 255. Написать функцию поиска максимума на диагональном кресте.
Проиллюстрировать.
Помогите с написание программы.
Люди, помоги пожалуйста. Срочно нужно.
С меня небольшое вознаграждение.
Решение задачи: «Массив: Написать функцию поиска максимума на диагональном кресте.»
textual
Листинг программы
#include <stdio.h> #include <Windows.h> #include <stdlib.h> #include <time.h> int main (void) { int M, N; scanf ("%d", &M); scanf ("%d", &N); int matrix [M][N]; int i, j; int max=0; randomize(); for (i=0; i<M; i++) { for (j=0; j<N; j++) { matrix[i][j]=random(256); } } for (i=0; i<M; i++) { for (j=0; j<N; j++) { if ((i==j || i==M-j) && matrix [i][j]>max) max = matrix [i][j]; } } printf ("%d\n", max); system ("pause") return 0; }
Объяснение кода листинга программы
В этом коде:
- Объявляются переменные M и N, в которые с помощью функции scanf() считываются значения размеров матрицы из стандартного ввода.
- Создается массив matrix[M][N] для хранения элементов матрицы.
- Задаются начальные значения переменных i и j, которые будут использоваться в циклах.
- Задается начальное значение переменной max, которое будет использоваться для хранения максимального элемента матрицы.
- С помощью функции randomize() инициируется генератор случайных чисел.
- С помощью двойного цикла заполняется массив matrix[M][N] случайными значениями.
- С помощью двойного цикла и условного оператора if находится максимальное значение в матрице. Переменная max обновляется, если найденное значение больше текущего значения max.
- С помощью функции printf() выводится значение переменной max.
- С помощью функции system(
pause
) приостанавливается выполнение программы до нажатия клавиши. - Завершается функция main(), и программа возвращает 0.
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д