Найти элементы матрицы, которые превышают все элементы, лежащие ниже главной диагонали - C (СИ) (75355)
Формулировка задачи:
Дана матрица. Среди элементов матрицы лежащих выше главной диагонали найти те, которые превышают все элементы лежащие ниже главной диагонали. Вычислить сумму
Решение задачи: «Найти элементы матрицы, которые превышают все элементы, лежащие ниже главной диагонали»
textual
Листинг программы
#include <stdio.h> #include <conio.h> #include <stdlib.h> #include <time.h> main() { const int n=4; int a[n][n], s=0, i, j, under_max=0; srand(time(NULL)); for (i=0; i<=n; i++) { for (j=0; j<=n; j++) { a[i][j]=rand()%1000; if (i>j && a[i][j]>under_max) under_max=a[i][j]; printf("%5d",a[i][j]); } printf("\n"); } printf("\n"); for (i=0; i<=n; i++) for (j=0; j<=n; j++) if (i<j && a[i][j]>under_max) { printf("%d ",a[i][j]); //элементы выше главной диагонали, которые превышают все элементы, лежащие ниже главной диагонали s+=a[i][j]; //сумма этих элементов } printf("\nSumma = %d",s); //если сумма == 0, значит нет таких элементов getch(); }
Объяснение кода листинга программы
- Включаем необходимые заголовочные файлы
- Объявляем функцию main()
- Задаем размер матрицы n=4 и инициализируем ее случайными значениями с помощью функции rand()%1000
- Инициализируем переменную s=0 для подсчета суммы элементов, i, j, under_max=0
- Задаем начальное значение для генератора случайных чисел с помощью функции srand(time(NULL))
- С помощью двух вложенных циклов заполняем матрицу a[i][j] случайными числами
- С помощью условного оператора if (i>j && a[i][j]>under_max) находим максимальное значение под главной диагональю и обновляем under_max
- С помощью функции printf() выводим значения матрицы на экран
- С помощью двух вложенных циклов находим элементы матрицы, которые превышают все элементы, лежащие ниже главной диагонали
- С помощью оператора printf() выводим найденные элементы на экран
- С помощью оператора += суммируем найденные элементы и сохраняем сумму в переменной s
- С помощью оператора printf() выводим сумму на экран
- С помощью функции getch() останавливаем выполнение программы
- Если сумма равна нулю, то выводим сообщение об отсутствии элементов, которые превышают все элементы, лежащие ниже главной диагонали
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д