Форум программистов, компьютерный форум, киберфорум
Наши страницы

Дана матрица, найти макс области (доработать код) - C++

Войти
Регистрация
Восстановить пароль
Другие темы раздела
C++ CreateEvent и С++ http://www.cyberforum.ru/cpp-beginners/thread975663.html
Здравсти, Возник вопрос во время написания программы, есть 2 платы канала ввода-вывода по манчестеру,генерирующие прерывания по приходу данных в Windows прерывания регистрируются посредством...
C++ В Visual studio C++ 2010 не запускается исплняемый файл При компиляции 1>Построение успешно завершено. Но 1>C:\Program Files (x86)\MSBuild\Microsoft.Cpp\v4.0\Microsoft.MakeFile.Targets(37,5): warning MSB8005: свойство "NMakeBuildCommandLine" не... http://www.cyberforum.ru/cpp-beginners/thread975660.html
C++ Почему программа "падает" на функции заполнения дерева?
Здравствуйте! У меня проблема с заполнением дерева. #include "stdafx.h" #include <iostream> using namespace std; struct Node //Звено дерева {
rand, srand и т.д C++
Дана целочисленная матрица A (N,M), в которой имеются ровно два одинаковых элемента. Найти индексы этих элементов. Вопрос: можно ли как то генерировать числа, чтобы только 2 элемента были равны...
C++ Не работает, найдите ошибку http://www.cyberforum.ru/cpp-beginners/thread975635.html
Задание: Дана целочисленная квадратная матрица порядка 5. Выяснить, имеются ли в матрице ненулевые элементы, и если имеются, то указать индексы всех ненулевых элементов. #include <iostream>...
C++ Перевод из постфиксной формы записи в инфиксную с использованием скобок перевод буквенного выражения с проверкой правильности ввода подробнее

Показать сообщение отдельно
Slowpok
4 / 4 / 0
Регистрация: 03.01.2012
Сообщений: 112

Дана матрица, найти макс области (доработать код) - C++

12.10.2013, 19:33. Просмотров 232. Ответов 2
Метки (Все метки)

Добрый день, помогите пожалуйста!

Условие:
Дана квадратная матрица, порядок с клавиатуры. Найти макс. элемент заштрихованной части.

Вот мой код:
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
#include <iostream>
using namespace std;
int main()
{
setlocale (LC_ALL, "RUS");
int n,i,j,a[n][n];
cout<<"n=";
cin>>n;
cout<<"A \n";
for (i=0; i<n; i++)
    for (j=0; j<n; j++)
        cin>>a[i][j];
int imax,jmax,max;
max=0;
for (i=0; i<n; i++)
    for (j=0; j<n; j++)
        if ((j<=i) && ((n-i+1)>=j) && (a[i][j]>max)) 
        { max=a[i][j]; imax=i; jmax=j; }
cout<<"ot: a["<<imax<<"]["<<jmax<<"]="<<max<<"  \n";
system("pause");
return 0;
}
Работает только при нечетном n. Т.е., например, для матрицы второго порядка:
http://www.cyberforum.ru/cgi-bin/latex.cgi?\begin{bmatrix}1 & 7\\ 2 & 6\end{bmatrix}
по условию мы должны вывести 2, но выводим 6, т.к. на второй итерации цикла выполняется n-i+1 (мешает +1)
0
Изображения
 
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
 
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru