Как найти 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();
}

Объяснение кода листинга программы

  1. Input: функция для ввода матрицы.
  2. max: функция для поиска максимального значения в заштрихованной части матрицы.
  3. m: размерность квадратной матрицы.
  4. f: временный массив для хранения максимального значения.
  5. mas: матрица для обработки.
  6. q: переменная для хранения количества элементов в матрице.
  7. max: текущее максимальное значение.
  8. maxl: текущее максимальное значение в левой половине матрицы.
  9. i, j: индексы для обхода матрицы.
  10. printf: функция вывода информации на экран.
  11. scanf: функция для ввода данных с клавиатуры.
  12. stdafx.h: заголовочный файл, необходимый для работы с Windows API.
  13. double: тип данных для хранения чисел с плавающей точкой.
  14. malloc: функция для выделения памяти.
  15. free: функция для освобождения памяти.
  16. system: функция для выполнения системных команд.
  17. chcp 1251: команда для установки кодировки консоли.
  18. cls: команда для очистки консоли.
  19. getchar: функция для получения одного символа из стандартного ввода.
  20. printf: функция для вывода информации на экран.

ИИ поможет Вам:


  • решить любую задачу по программированию
  • объяснить код
  • расставить комментарии в коде
  • и т.д
Попробуйте бесплатно

Оцени полезность:

10   голосов , оценка 4.1 из 5
Похожие ответы