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

С++ для начинающих

Войти
Регистрация
Восстановить пароль
 
trans967
6 / 2 / 1
Регистрация: 23.04.2013
Сообщений: 186
#1

Седловая точка - C++

01.01.2014, 11:47. Просмотров 547. Ответов 10
Метки нет (Все метки)

Дана целочисленная прямоугольная матрица.Определить номера строк и столбцов всех седловых точек матрицы


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
#include <iostream.h>
#include <math.h>
int max(int *stolb, int *parr, int *ni)
{
int max=parr[*stolb];
for (int i=*stolb; i<20*(*ni); i+=20)
if (parr[i]>max)
max=parr[i];
return max;
}
int min(int *parr, int *nj)
{
int min=parr[0];
for (int j=0; j<*nj; j++)
if (parr[j]<min)
min=parr[j];
return min;
}
int main()
{
int arr2[4][6]={{21,23,43,55,19,71},
               {-2,3,-6,3,12,2},
               {1,-7,5,7,-16,7}
               {5,-4,-8,1,-10,-1}};
int arr[20][20];
int i,j;
int ni,nj;
int ch;
cout<<"vvedite 1(vvesti massiv samomu),ili 0(zapolnit' automatichecki: "<<endl;
cin>>ch;
if(ch==0){
ni=4;nj=6;
for (i=0; i<ni; i++)
for (j=0; j<nj; j++)
arr[i][j]=arr2[i][j];}
if (ch==1){
cout<<"vvedite kolichestvo strok massiva(do 20): "<<endl;
cin>>ni;
cout<<"vvedite kolichestvo stolbcov massiva(do 20): "<<endl;
cin>>nj;
for (i=0; i<ni; i++){
cout<<"vvedite "<<i+1<<"-yu stroku"<<endl;
for (j=0; j<nj; j++){
cout<<j+1<<"-i element: ";
cin>>arr[i][j];}}}
for (i=0;i<ni;i++){
for (j=0;j<nj;j++)}
cout<<arr[i][j]<<"    ";
cout<<endl;}
bool proverka=false;
for (i=0;i<ni;i++)
for (j=0;j<ni;j++}
if (arr[i][j]==max(&j,arr[0],&ni) && arr[i][j]==min(arr[i], &nj)){
cout<<"tochka s nomerom stroki "<<i+1<<" i nomerom stolbca "<<j+1<<" yavlyaetsya sedlovoi "<<"(znachenie "<aa[i][j]<<")"<<endl;
proverka=true;}
if (!proverka)
cout<<"v dannom massive net sedl.tochek"<<endl;
cout<<endl<<endl<<endl;
return 0;
}
ошибки какие-то,не понимаю почему. Скажите пожалуйста,что исправить,или скиньте исправленный код.
Заранее большое спасибо и с наступившим Новым Годом!)
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
01.01.2014, 11:47     Седловая точка
Посмотрите здесь:

Седловая точка - C++
Элемент матрицы назовем седловой точки, если он является наименьшим в своей строке и одновременно крупнейшим в своем столбце или, наоборот,...

Седловая точка - C++
Элемент матрицы назовем седловой точкой, если он является наименьшим в своей своей строке и одновременно наибольшим в своем столбце или,...

Седловая точка - C++
Дана целочисленная прямоугольная матрица . Матрица А имеет седловую точку Аij, если Аij является минимальным элементом в i-ой строке и...

Седловая точка в матрице - C++
Дана целочисленная прямоугольная матрица. Определить номера строк и столбцов всех седловых точек матрицы. (Седловая точка – элемент ...

Массивы. Седловая точка - C++
элемент матрицы назовем седловой точкой,если он яв-ся наим.в своей строке и одновременно наиб.в своем столбце или наоборот яв-ся наиб.в...

Точка в Многоугольнике! - C++
Задача &quot;Точка в многоугольнике&quot;. Условие. Многоугольник (выпуклый) задан координатами своих вершин (xi;yi), 1 i N в...

После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
Esecman
38 / 26 / 6
Регистрация: 31.12.2013
Сообщений: 329
01.01.2014, 11:53     Седловая точка #2
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
#include <iostream>
#include <math.h>
 
using namespace std;
int max(int *stolb, int *parr, int *ni)
{
int max=parr[*stolb];
for (int i=*stolb; i<20*(*ni); i+=20)
if (parr[i]>max)
max=parr[i];
return max;
}
int min(int *parr, int *nj)
{
int min=parr[0];
for (int j=0; j<*nj; j++)
if (parr[j]<min)
min=parr[j];
return min;
}
int main()
{
int arr2[4][6]={{21,23,43,55,19,71},
{-2,3,-6,3,12,2},
{1,-7,5,7,-16,7},
{5,-4,-8,1,-10,-1}};
int arr[20][20];
int i,j;
int ni,nj;
int ch;
cout<<"vvedite 1(vvesti massiv samomu),ili 0(zapolnit' automatichecki: "<<endl;
cin>>ch;
if(ch==0){
ni=4;nj=6;
for (i=0; i<ni; i++)
for (j=0; j<nj; j++)
arr[i][j]=arr2[i][j];}
if (ch==1){
cout<<"vvedite kolichestvo strok massiva(do 20): "<<endl;
cin>>ni;
cout<<"vvedite kolichestvo stolbcov massiva(do 20): "<<endl;
cin>>nj;
for (i=0; i<ni; i++){
cout<<"vvedite "<<i+1<<"-yu stroku"<<endl;
for (j=0; j<nj; j++){
cout<<j+1<<"-i element: ";
cin>>arr[i][j];}}}
for (i=0;i<ni;i++){
for (j=0;j<nj;j++)
cout<<arr[i][j]<<" ";
cout<<endl;}
bool proverka=false;
for (i=0;i<ni;i++)
for (j=0;j<ni;j++)
if (arr[i][j]==max(&j,arr[0],&ni) && arr[i][j]==min(arr[i], &nj)){
cout<<"tochka s nomerom stroki "<<i+1<<" i nomerom stolbca "<<j+1<<" yavlyaetsya sedlovoi "<<"(znachenie "<< arr[i][j]<<")"<<endl;
proverka=true;}
if (!proverka)
cout<<"v dannom massive net sedl.tochek"<<endl;
cout<<endl<<endl<<endl;
system("pause");
return 0;
}
Все
Работаю на dev-C++
На Visual:
Тот же самый код, просто добавить в начало #include "stdafx.h"
trans967
6 / 2 / 1
Регистрация: 23.04.2013
Сообщений: 186
01.01.2014, 11:54  [ТС]     Седловая точка #3
вы не поняли.
ошибки выдаёт в самом коде.
вот и думаю,что что-то не так написано тут
П.С. с вашим инклудом тоже не работает
Esecman
38 / 26 / 6
Регистрация: 31.12.2013
Сообщений: 329
01.01.2014, 11:56     Седловая точка #4
Цитата Сообщение от trans967 Посмотреть сообщение
вы не поняли.
ошибки выдаёт в самом коде.
вот и думаю,что что-то не так написано тут
НУ? В самом коде? Всмысле не правильно отображается что-то или не компилит?
Если не компилит, значит код выше поможет Вам.
trans967
6 / 2 / 1
Регистрация: 23.04.2013
Сообщений: 186
01.01.2014, 11:58  [ТС]     Седловая точка #5
не компилирует,просто при воспроизведении ошибки выскакивают различные.
Я уже не знаю,что исправлять в коде.
Esecman
38 / 26 / 6
Регистрация: 31.12.2013
Сообщений: 329
01.01.2014, 11:58     Седловая точка #6
Если не компилит, значит код выше поможет Вам.
Читай внимательней
Я исправил ошибки, скомпилируйте код выше.
trans967
6 / 2 / 1
Регистрация: 23.04.2013
Сообщений: 186
01.01.2014, 12:00  [ТС]     Седловая точка #7
так в коде выше ничего не изменилось,вроде.
Я добавил ваш инклуд - всё те же ошибки и остались.
Esecman
38 / 26 / 6
Регистрация: 31.12.2013
Сообщений: 329
01.01.2014, 12:02     Седловая точка #8
Цитата Сообщение от trans967 Посмотреть сообщение
так в коде выше ничего не изменилось,вроде.
Я добавил ваш инклуд - всё те же ошибки и остались.
Как это не изменилось? Вы скомпилируйте, и увидите изменилось ли что-нибудь или нет.
trans967
6 / 2 / 1
Регистрация: 23.04.2013
Сообщений: 186
01.01.2014, 12:02  [ТС]     Седловая точка #9
скомпилировал, осталась ошибка вот такая: "unable to open include file 'stdafx.h'
Esecman
38 / 26 / 6
Регистрация: 31.12.2013
Сообщений: 329
01.01.2014, 12:04     Седловая точка #10
Цитата Сообщение от trans967 Посмотреть сообщение
скомпилировал, осталась ошибка вот такая: "unable to open include file 'stdafx.h'
Значит уберите этот инклюд.
Я же Вам сказал использовать это , если Вы используете MS Visual Studio
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
01.01.2014, 12:07     Седловая точка
Еще ссылки по теме:

Трехмерная точка - C++
Всем здравствуйте! Нужна программка. Что есть: Код структуры описывающей трехмерную точку { double x; double y; ...

оператор точка - C++
почему когда объявляю свой класс в другом классе, и после использования точки, то переменная, например типа int, которю я хочу вывести,...

Треугольник и точка - C++
Задача С клавиатуры вводится координаты вершин треугольника и координаты точки с .Определить лежит ли точка в треугольнике.И если можно...

Точка в треугольнике - C++
Помогите! даны три вершины треугольника с координатами(коорд вводятся с клавиатуры) А(х1,y1) B(х2,y2) и С(х3,y3). И вводятся координаты...


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

Или воспользуйтесь поиском по форуму:
trans967
6 / 2 / 1
Регистрация: 23.04.2013
Сообщений: 186
01.01.2014, 12:07  [ТС]     Седловая точка #11
Спасибо огромное, всё заработало
Yandex
Объявления
01.01.2014, 12:07     Седловая точка
Ответ Создать тему
Опции темы

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