Форум программистов, компьютерный форум, киберфорум
Наши страницы
С++ для начинающих
Войти
Регистрация
Восстановить пароль
 
Рейтинг 4.71/7: Рейтинг темы: голосов - 7, средняя оценка - 4.71
jeka950
0 / 0 / 0
Регистрация: 15.11.2013
Сообщений: 4
#1

максимальный элемент главной диагонали матрицы

15.11.2013, 14:17. Просмотров 1236. Ответов 9
Метки нет (Все метки)

Помогите, какой должен быть код чтобы программа высчитывала максимальный элемент главной диагонали матрицы Х(5 на 5)
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
15.11.2013, 14:17
Ответы с готовыми решениями:

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

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

Вывести строку матрицы, в которой элемент, стоящий на главной диагонале, максимальный среди элементов главной диагонали.
Дано квадратную матрицу порядка N. Вывести строку матрицы, в которой элемент,...

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

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

9
ПерС
431 / 356 / 322
Регистрация: 05.11.2013
Сообщений: 1,008
Записей в блоге: 6
Завершенные тесты: 1
15.11.2013, 15:00 #2
Цитата Сообщение от jeka950 Посмотреть сообщение
Помогите, какой должен быть код чтобы программа высчитывала максимальный элемент главной диагонали матрицы Х(5 на 5)
Это секретный код... только для тебя... если X задана, то
C++
1
2
int max=x[0][0];
for (int i=1; i<5; i++) if (x[i][i]>max) max=x[i][i];
1
Hoottie_McGOOB
107 / 105 / 44
Регистрация: 04.10.2013
Сообщений: 231
15.11.2013, 15:03 #3
C++
1
2
3
4
5
6
7
8
9
10
11
    int X[5][5];
    //заполняем матрицу a
 
 
    int max = X[0][0];
 
    for(int i=1; i<5; ++i)
        if(X[i][i]>max)
            max = X[i][i];
 
    cout<<"max = "<<max<<endl;
0
Alexxx7
98 / 34 / 10
Регистрация: 24.04.2012
Сообщений: 151
15.11.2013, 15:14 #4
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
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
#include <iostream>
#include <ctime>
#include <iomanip>
using namespace std;
 
int main(int argc, char* argv[])
{
    int n,m,count ;
    float max_el;
    srand(time(0)); // генерация случайных чисел
    // динамическое создание двумерного массива вещественных чисел на десять элементов
    cin >>n;
    cin >>m;
    float **ptrarray = new float* [n]; // две строки в массиве
    for (int count = 0; count < n; count++)
        ptrarray[count] = new float [m]; // и пять столбцов
    // заполнение массива
    for (int count_row = 0; count_row < n; count_row++)
        for (int count_column = 0; count_column < m; count_column++)
            ptrarray[count_row][count_column] = (rand() % 10 + 1) / float((rand() % 10 + 1)); //заполнение массива случайными числами с масштабированием от 1 до 10
    // вывод массива
    for (int count_row = 0; count_row < n; count_row++){
        for (int count_column = 0; count_column < m; count_column++)
            cout << setw(4) <<setprecision(2) << ptrarray[count_row][count_column] << " ";
            cout << endl;
        }
    cout<<endl;
    //для рядов
    for (int col = 0; col < n; col++){
        max_el = ptrarray[col][0];
        int row = 0;
        for (; row < m; row++){
            if( max_el < ptrarray[col][row])
                max_el = ptrarray[col][row];
        }
        cout<<" Max el "<<col<<" row "<<max_el<<endl;
    }
    cout<<endl;
    //для калонн
    for (int row = 0; row < m; row++){
        max_el = ptrarray[0][row];
        int col = 0;
        for (; col < n; col++){
            if( max_el < ptrarray[col][row])
                max_el = ptrarray[col][row];
        }
        cout<<" Max el "<<row<<" col "<<max_el<<endl;
    }
    //для диагонали
    max_el = ptrarray[0][0];
    for (int col = 0; col < n; col++){
        for (int row = 0; row < m; row++){
            if( col == row)
                if(max_el < ptrarray[col][row])
                    max_el = ptrarray[col][row];
        }
    }
    cout<<" Max el diag - "<<max_el<<endl;
    cout<<endl;
    // удаление двумерного динамического массива
    for (int count = 0; count < n; count++)
        delete []ptrarray[count];
    system("pause");
    return 0;
}
только что похожее писал, лишнее удали если не надо
1
jeka950
0 / 0 / 0
Регистрация: 15.11.2013
Сообщений: 4
15.11.2013, 16:08  [ТС] #5
Цитата Сообщение от ПерС Посмотреть сообщение
Это секретный код... только для тебя... если X задана, то
C++
1
2
int max=x[0][0];
for (int i=1; i<5; i++) if (x[i][i]>max) max=x[i][i];
получается что Х в данном задании не задана
0
ПерС
431 / 356 / 322
Регистрация: 05.11.2013
Сообщений: 1,008
Записей в блоге: 6
Завершенные тесты: 1
15.11.2013, 16:11 #6
это огромная проблема, да
а ты попробуй поступить так: задай секретную матрицу от фонаря
C++
1
2
3
4
5
6
7
int x[5][5] = {
 {1,2,3,4,5},
 {5,4,3,2,1},
 {1,2,3,4,5},
 {5,4,3,2,1},
 {1,2,3,4,2}
};
представляешь, я шаман... могу предсказать, что ответ будет 4
1
jeka950
0 / 0 / 0
Регистрация: 15.11.2013
Сообщений: 4
15.11.2013, 16:23  [ТС] #7
Цитата Сообщение от ПерС Посмотреть сообщение
это огромная проблема, да
а ты попробуй поступить так: задай секретную матрицу от фонаря
C++
1
2
3
4
5
6
7
int x[5][5] = {
 {1,2,3,4,5},
 {5,4,3,2,1},
 {1,2,3,4,5},
 {5,4,3,2,1},
 {1,2,3,4,2}
};
представляешь, я шаман... могу предсказать, что ответ будет 4
ну это понятно что будет 4, в матрицах я разбираюсь но просто С++ для меня так тяжело даётся а как должен выглядеть полный код для такой программы?
0
ПерС
431 / 356 / 322
Регистрация: 05.11.2013
Сообщений: 1,008
Записей в блоге: 6
Завершенные тесты: 1
15.11.2013, 17:12 #8
хм, если не брать в расчёт зависящих от компилятора операторов, то так:
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
#include <iostream.h>
#include <stdlib.h>
int main () {
int x[5][5] = {
 {1,2,3,4,5},
 {5,4,3,2,1},
 {1,2,3,4,5},
 {5,4,3,2,1},
 {1,2,3,4,2}
};
 int max=x[0][0];
 for (int i=1; i<5; i++) if (x[i][i]>max) max=x[i][i];
 cout << "max=" << max << endl;
 system("pause");
 return 0;
}
у тебя в ветке, кажется, ещё пара версий
0
jeka950
0 / 0 / 0
Регистрация: 15.11.2013
Сообщений: 4
16.11.2013, 00:57  [ТС] #9
а какой должен быть код для того чтобы я вводил значения матрицы в готовой проге?
ну в смысле через ту консоль.
0
ПерС
431 / 356 / 322
Регистрация: 05.11.2013
Сообщений: 1,008
Записей в блоге: 6
Завершенные тесты: 1
16.11.2013, 07:28 #10
Цитата Сообщение от jeka950 Посмотреть сообщение
а какой должен быть код для того чтобы я вводил значения матрицы в готовой проге?
ну в смысле через ту консоль.
вместо
C++
1
2
3
4
5
6
7
int x[5][5] = {
 {1,2,3,4,5},
 {5,4,3,2,1},
 {1,2,3,4,5},
 {5,4,3,2,1},
 {1,2,3,4,2}
};
напиши
C++
1
2
3
4
5
6
7
8
9
10
int x[5][5]; 
int i,j;
cout << "Ввод матрицы 5*5" << endl;
for (i=0; i<5; i++)
for (j=0; j<5; j++) {
 cout << "A[" << i << "," << j <<"]=";
 cin >> x[i][j];
}
int max=x[0][0];
for (i=1; i<5; i++)
дальше без изменений
0
16.11.2013, 07:28
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
16.11.2013, 07:28

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

Определить максимальный элемент среди элементов матрицы, расположенных выше главной диагонали
Задание: Задана матрица A(n,n). Определить максимальный элемент среди...

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


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

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

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2018, vBulletin Solutions, Inc.
Рейтинг@Mail.ru