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

Найти максимальный элемент матрицы, находящийся ниже главной диагонали

28.01.2014, 18:19. Показов 3211. Ответов 5
Метки нет (Все метки)

Author24 — интернет-сервис помощи студентам
Добрый день, не могли бы вы мне помочь? Необходимо найти максимальный элемент матрицы [8][8], находящийся ниже главной диагонали.
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
#include "stdafx.h"
#include <cstdio>
#include <Windows.h>
 
void main()
{
    srand(GetTickCount());
 
    int i, j;
    int rand_min, rand_max;
    int X[8][8];
    int X_max = 0;
 
    printf_s("rand_min, rand_max: ");
    scanf_s("%d%d", &rand_min, &rand_max);
 
    for (i = 0; i < 8; i++)
    {
        for (j = 0; j < 8; j++)
        {
            X[i][j] = rand_min + (rand_max - rand_min)*rand() / RAND_MAX;
            printf_s("%d\t", X[i][j]);
        }
        if (X[i][i]>X[X_max][X_max])
            X_max = i;
        printf_s("\n");
    }
    printf_s("\n\nX[%d][%d]=%d - Maximum!\n", X_max, X_max, X[X_max][X_max]);
}
0
Лучшие ответы (1)
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
28.01.2014, 18:19
Ответы с готовыми решениями:

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

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

Найти максимальный элемент среди лежащих ниже главной диагонали
Привет, помогите пожалуйста решить 4 задачки под dev c++ , если можно с комментариями ) 1.Найти...

Динамическая матрица: найти максимальный элемент среди лежащих ниже главной диагонали
Нужна помощь. Я в Си слаб, дали задания, никак не могу его сделать, помогите пожалуйста( Массив...

5
Модератор
Эксперт С++
13502 / 10754 / 6409
Регистрация: 18.12.2011
Сообщений: 28,698
28.01.2014, 18:26 2
C++
1
2
3
4
5
6
7
8
9
10
11
int Xmax=0,Ymax=1;
for (i = 1; i < 8; i++)
    {
        for (j = 0; j < i; j++)
        {
            if (X[i][j]>X[Y_max][X_max])
            {
                Y_max = i;
                X_max=j;
            }
    }
0
0 / 0 / 0
Регистрация: 05.12.2013
Сообщений: 29
28.01.2014, 18:57  [ТС] 3
Вы, возможно, меня не поняли... Та часть кода, которую вы скидывали считает произведение элементов, а мне нужно просто найти "max"...
0
Модератор
Эксперт С++
13502 / 10754 / 6409
Регистрация: 18.12.2011
Сообщений: 28,698
28.01.2014, 18:59 4
И где Вы тут углядели произведение?
Максмум будет хранится в X[Y_max][X_max]
0
0 / 0 / 0
Регистрация: 05.12.2013
Сообщений: 29
28.01.2014, 19:09  [ТС] 5
Да?
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
#include "stdafx.h"
#include <cstdio>
#include <Windows.h>
 
void main()
{
    srand(GetTickCount());
 
    int i, j;
    int rand_min, rand_max;
    int X[8][8];
    int X_max = 0, Y_max = 0;
 
    printf_s("rand_min, rand_max: ");
    scanf_s("%d%d", &rand_min, &rand_max);
 
    for (i = 0; i < 8; i++)
    {
        for (j = 0; j < i; j++)
        {
            X[i][j] = rand_min + (rand_max - rand_min)*rand() / RAND_MAX;
            printf_s("%d\t", X[i][j]);
        }
        if (X[i][j]>X[Y_max][X_max])
            X_max = i;
            
        printf_s("\n");
    }
    printf_s("\n\nX[%d][%d]=%d - Maximum!\n", X_max, X_max, X[X_max][X_max]);
}
Тогда запустите эту программу и посмотрите какое максимальное значение будет вам показано...
0
Модератор
Эксперт С++
13502 / 10754 / 6409
Регистрация: 18.12.2011
Сообщений: 28,698
28.01.2014, 20:00 6
Лучший ответ Сообщение было отмечено Памирыч как решение

Решение

Что-то криво Вы исправили
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
#include <stdio.h>
#include <windows.h>
void main()
{
    srand(GetTickCount());
     int i, j;
    int rand_min, rand_max;
    int X[8][8];
    printf_s("rand_min, rand_max: ");
    scanf_s("%d%d", &rand_min, &rand_max);
 
    for (i = 0; i < 8; i++)
    {
        for (j = 0; j < 8; j++)
        {
            X[i][j] = rand_min + (rand_max - rand_min)*rand() / RAND_MAX;
            printf_s("%d\t", X[i][j]);
        }
        printf_s("\n");
    }
    int X_max=0,Y_max=1;
    for (i = 1; i < 8; i++)
    {
        for (j = 0; j < i; j++)
        {
            if (X[i][j]>X[Y_max][X_max])
            {
                Y_max = i;
                X_max=j;
            }
        }
    }
     printf_s("\n\nX[%d][%d]=%d - Maximum!\n", Y_max, X_max, X[Y_max][X_max]);
}
0
28.01.2014, 20:00
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
28.01.2014, 20:00
Помогаю со студенческими работами здесь

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

Найти минимальный элемент матрицы, расположенный ниже главной диагонали
Задана матрица размером NxN. Найти минимальный элемент, среди элементов, расположенных ниже главной...

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

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


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

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

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