Форум программистов, компьютерный форум CyberForum.ru

Как в двумерном массиве найти число находящееся на пересечении двух диагоналей? - C++

Восстановить пароль Регистрация
 
Sapendo
5 / 5 / 3
Регистрация: 13.05.2014
Сообщений: 130
23.06.2014, 00:44     Как в двумерном массиве найти число находящееся на пересечении двух диагоналей? #1
Помогите, пожалуйста! Нужно решить задачу:
Дана действительная квадратная матрица порядка N (N – нечетное), заполненная случайными числами, все элементы различны.
Найти наибольший элемент среди стоящих на главной диагонали и поменять его местами с элементом, стоящим на пересечении этих диагоналей.
Встала проблема найти и запомнить число которое находиться на пересечении двух диагоналей!!!!
Мне это только момент подскажите, не надо всю задачу решать!!!
Спасибо
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
23.06.2014, 00:44     Как в двумерном массиве найти число находящееся на пересечении двух диагоналей?
Посмотрите здесь:

C++ Найти в двумерном массиве максимальный элемент
C++ как найти кол-во локальных минимумов в двумерном массиве
как найти min в двух мерном массиве C++
Определите в двумерном числовом массиве число соседства с двух чисел разного знака C++
C++ Найти количество нулей в двумерном массиве
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
Елена Едыгарова
 Аватар для Елена Едыгарова
34 / 20 / 9
Регистрация: 24.01.2014
Сообщений: 80
23.06.2014, 00:58     Как в двумерном массиве найти число находящееся на пересечении двух диагоналей? #2
i=j=n/2
BatonPro
30 / 30 / 24
Регистрация: 21.06.2014
Сообщений: 81
23.06.2014, 01:00     Как в двумерном массиве найти число находящееся на пересечении двух диагоналей? #3
Элемент на пересечении диагоналей, это элемент с индексами [N/2][N/2] где N-порядок матрицы.
Sapendo
5 / 5 / 3
Регистрация: 13.05.2014
Сообщений: 130
23.06.2014, 01:04  [ТС]     Как в двумерном массиве найти число находящееся на пересечении двух диагоналей? #4
C++
1
2
3
4
5
6
7
8
9
10
11
int a;
    for (int i=0; i<r; i++)//переход между строками
    {
        for (int j=0; j<c; j++)//перебор элементов одной строки
        {
            if (i==j==r/2)
                a = mas [i] [j];
    }
                cout<<a<<endl;
 
}
не понял!!!
Если можно, разжуйте пожалуйста!!!
Как мне его вывести на экран????
То что это N/2 я понимаю, спасибо!!!
BatonPro
30 / 30 / 24
Регистрация: 21.06.2014
Сообщений: 81
23.06.2014, 01:20     Как в двумерном массиве найти число находящееся на пересечении двух диагоналей? #5
так нельзя сравнивать
C++
1
 if (i==j==r/2)
нужно
C++
1
 if (i==r/2 && j==r/2)
вывод логичнее делать после выхода из цикла.
правильный код:
C++
1
2
3
4
5
6
7
8
9
10
11
int a;
    for (int i=0; i<r; i++)//переход между строками
    {
        for (int j=0; j<c; j++)//перебор элементов одной строки
        {
            if (i==r/2 && j==r/2)
                a = mas [i] [j];
    }   
 
}
  cout<<a<<endl;
Sapendo
5 / 5 / 3
Регистрация: 13.05.2014
Сообщений: 130
23.06.2014, 01:21  [ТС]     Как в двумерном массиве найти число находящееся на пересечении двух диагоналей? #6
Спасибо разобрался)))
C++
1
2
3
4
5
6
7
int a;
    for (int i=0; i<r; i++)//переход между строками
    {
        for (int j=0; j<c; j++)//перебор элементов одной строки
        {
            if (((i=j)/2)==((i+j-1)/2))
                a = mas [i] [j];
Yandex
Объявления
23.06.2014, 01:21     Как в двумерном массиве найти число находящееся на пересечении двух диагоналей?
Ответ Создать тему
Опции темы

Текущее время: 03:02. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru