Как найти max элемент, расположенный в заштрихованной части матрицы - C (СИ)
Формулировка задачи:
Дана действительная квадратная матрица порядка n. Найти наибольшее из значений элементов, расположенных в заштрихованной части матрицы. Для определения наибольшего элемента использовать подпрограмму. в СИ
Решение задачи: «Как найти max элемент, расположенный в заштрихованной части матрицы»
textual
Листинг программы
#include <stdio.h> #include "stdafx.h" #include <iostream> double ** Input(int rows, int cols) { double **p; p = (double**)malloc(rows * sizeof(double*)); for (int i = 0; i < rows; i++) { p[i] = (double*)malloc(cols * sizeof(double)); for (int j = 0; j < cols; j++) { printf("A[%d][%d]= ", i, j); scanf("%lf", &p[i][j]); } } return p; } double ** max(double **mas, int m) // отбор максимального значения { int q; int max = 0; int maxl = 0; q = ((m - 1) / 2); for (int i = 0; q < i < m; i++) { for (int j = i; j < m; j++) { if (mas[i][j] > max) { max = mas[i][j]; } } } /* for (int j = 0; ((m - 1) / 2) < j < m; j++) { for (int i = (m - 1 - j); i >= 0; i--) { if (mas[i][j] > maxl) { maxl = mas[i][j]; } } } */ printf("min = %d", max); return mas; } int main() { int m; double **f; double **mas; system("chcp 1251"); system("cls"); printf("Введите размерность квадратной матрицы: "); scanf("%d", &m); printf("Ввод матрицы А\n"); mas = Input(m, m); printf("максимальное значение \n"); f = max(mas, m); getchar(); getchar(); }
Объяснение кода листинга программы
- Input: функция для ввода матрицы.
- max: функция для поиска максимального значения в заштрихованной части матрицы.
- m: размерность квадратной матрицы.
- f: временный массив для хранения максимального значения.
- mas: матрица для обработки.
- q: переменная для хранения количества элементов в матрице.
- max: текущее максимальное значение.
- maxl: текущее максимальное значение в левой половине матрицы.
- i, j: индексы для обхода матрицы.
- printf: функция вывода информации на экран.
- scanf: функция для ввода данных с клавиатуры.
- stdafx.h: заголовочный файл, необходимый для работы с Windows API.
- double: тип данных для хранения чисел с плавающей точкой.
- malloc: функция для выделения памяти.
- free: функция для освобождения памяти.
- system: функция для выполнения системных команд.
- chcp 1251: команда для установки кодировки консоли.
- cls: команда для очистки консоли.
- getchar: функция для получения одного символа из стандартного ввода.
- printf: функция для вывода информации на экран.
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д