0 / 0 / 0
Регистрация: 02.09.2019
Сообщений: 17
1

Найти максимальный элемент матрицы выше главной и ниже побочной диагоналей

24.11.2019, 12:10. Показов 2969. Ответов 3
Метки нет (Все метки)

Author24 — интернет-сервис помощи студентам
Для квадратной матрицы с M * M чисел определить максимальный элемент с элементов, расположенных выше главной и ниже побочной диагоналей.
Нужен код. Спасибо!
0
Лучшие ответы (1)
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
24.11.2019, 12:10
Ответы с готовыми решениями:

Вычислить произведение ненулевых элементов матрицы выше и ниже главной и побочной диагоналей
Вычислить произведение ненулевых элементов матрицы A(n,n), выделенных на рисунке темным цветом.

Заменить элементы главной и побочной диагоналей матрицы на минимальный элемент ниже главной диагонали
В квадратной матрице А заменить элементы главной и побочной диагоналей на минимальный элемент,...

Найти сумму элементов матрицы, лежащих выше главной и побочной диагоналей
Универсальный алгоритм поиска элементов матрицы расположенных верхней половине матрицы без...

Заменить элементы главной диагонали матрицы нулями и найти максимальный элемент ниже побочной диагонали
Есть пример для решения другой задачи(она находит суму всех элементов каждой строки и выводит...

3
Диссидент
Эксперт C
27706 / 17322 / 3812
Регистрация: 24.12.2010
Сообщений: 38,979
24.11.2019, 13:57 2
V1n, В чем именно сложности? Создание матрицы? Организация прохода по нужной области? Определение максимума?
И что вы сделали для решения этой задачи? Как далеко продвинулись?
0
0 / 0 / 0
Регистрация: 02.09.2019
Сообщений: 17
24.11.2019, 14:17  [ТС] 3
Проблема возникла в создании указателей,я не уверен что верно их делаю,иногда выдает ошибку,вот код для определения максимума выше главной диагонали:
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
#include <iostream>
#include <ctime>
using namespace std;
int main()
{
    setlocale(LC_ALL, "ru");
    srand(time(NULL));
    int M, max;
    cout << "Введите размер матрицы: ";
    cin >> M;
    float** k = new float* [M];
    for (int i = 0; i < M; ++i)
    {
        k[i] = new float[M];
        for (int j = 0; j < M; ++j)
        {
            k[i][j] = rand() % 20;
            cout << k[i][j] << "\t";
        }
        cout << endl;
    }
    max = k[0][1];
    for (int i = 0; i < M - 1; ++i)
    {
        for (int j = i + 1; j < M; ++j)
        {
            if (k[i][j] > max) max = k[i][j];
        }
    }
    for (int i = 0; i < M; i++) 
    {
        delete[] k[i];  
    }
    delete[] k;
    cout << "Максимальный элемент: " << max << endl;
    system("pause");
    return 0;
}
Правильный ли он?
0
Диссидент
Эксперт C
27706 / 17322 / 3812
Регистрация: 24.12.2010
Сообщений: 38,979
24.11.2019, 14:34 4
Лучший ответ Сообщение было отмечено V1n как решение

Решение

V1n, строчка 32. Кажется, надо
C++
1
delete k[i];
И ты перебираешь элементы выше главной диагонали.
Надо так
C++
1
2
3
4
5
6
max = k[1][M-1];
for(int i = 1; i<M-1; i++) {
  int d = (i < M/2) ? M-i : i+1;
  for(j = d; j<M; j++)
    if (k[i][j] > max) max = k[i][j];
}
Мог ошибиться (+-1) в индексах. Посмотри внимательней.
И еще. Постарайся поскорее забыть о типе float. Только double.
1
24.11.2019, 14:34
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
24.11.2019, 14:34
Помогаю со студенческими работами здесь

Найти наибольшее из значений элементов матрицы расположенных выше главной и побочной диагоналей
Дана действительная квадратная матрица порядка n. Найти наибольшее из значений элементов,...

Найти наибольшее из значений элементов матрицы расположенных выше главной и побочной диагоналей
помогите переделать этот код,под нужный по условию. в принципе он правильный,но на боковые...

Найти максимум среди элементов матрицы ниже главной и выше побочной диагонали
Дана квадратная матрица целых чисел размером N&lt;=12. Заполнить матрицу случайными числами от 0 до...

Вычислить наименьшее значение среди компонентов матрицы, расположенных выше главной и выше побочной диагоналей
Здравствуйте. Помогите с решением задачи. Дана целочисленная квадратная матрица. Написать программу...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
4
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2024, CyberForum.ru