Найти разность модулей max и min элемента матрицы - C (СИ)
Формулировка задачи:
Помогите, пожалуйста, написать программу, определяющую разность модулей максимального и минимального элементов матрицы. Размерность матрицы вводится пользователем с клавиатуры, а сама матрица заполняется случайными числами из указанного пользователем диапазона.
Решение задачи: «Найти разность модулей max и min элемента матрицы»
textual
Листинг программы
#include <stdlib.h> #include <stdio.h> #include <math.h> #include <conio.h> #include <locale> void GEN(int **massive, int a, int b, int N, int M) { for (int i = 0; i < N; i++) { for (int j = 0; j < M; j++) { massive[i][j] = rand() % (b - a + 1) + a; } } } int main() { setlocale(LC_ALL, "Russian"); int N, a, b, M; printf("Введите количество строк матрицы: "); scanf_s("%d", &N); printf("Введите количество столбцов матрицы: "); scanf_s("%d", &M); printf("Введите начальную границу генерации числа: "); scanf_s("%d", &a); printf("Введите конечную границу генерации числа: "); scanf_s("%d", &b); int **massive; massive = (int**)malloc(N * sizeof(int*)); for (int i = 0; i < N; i++) { massive[i] = (int*)malloc(M * sizeof(int)); } GEN(massive, a, b, N, M); for (int i = 0; i < N; i++) { for (int j = 0; j < M; j++) { printf("%d\t", massive[i][j]); } printf("\n"); } printf("\n"); int min = massive[0][0], max = massive[0][0];// присваиваем первый элемент матрицы в min и max for (int j = 0; j < M; j++)//проходим по строкам for (int i = 1; i < N; i++)//проходим по столбцам { if (massive[j][i] < min)//если встретили элемент меньше чем min то присваиваем его к min { min = massive[j][i]; } else if (max < massive[j][i])// тоже самое только с максимумом { max = massive[j][i]; } } printf("max = %d\nmin = %d", max, min); int razn_abs = fabs(max) - fabs(min);//fabs функция модуля погугли сразу поймешь printf("\nРазность модулей = %d", razn_abs); _getch(); }
Объяснение кода листинга программы
- Ввод данных: количество строк, количество столбцов, начальная граница генерации числа, конечная граница генерации числа.
- Выделение памяти под матрицу.
- Генерация случайных чисел в заданном диапазоне и заполнение матрицы.
- Вывод содержимого матрицы на экран.
- Поиск минимального и максимального элемента матрицы и присвоение их значениям переменных min и max.
- Вычисление разности модулей max и min.
- Ввод данных с клавиатуры.
- Вывод результата на экран.
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д