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

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

Восстановить пароль Регистрация
Другие темы раздела
C++ локальный максимум http://www.cyberforum.ru/cpp-beginners/thread600873.html
Найти общее количество его локальных экстремумов, то есть локальных минимумов и локальных максимумов #include <iostream> #include<stdlib.h> #include <fstream> #include<string> using namespace std; int main() {
C++ Возвести в квадрат Ребят, помогите пожалуйста перевести с паскаля на с++ программку :cry: var a,b,c:integer; begin read(a,b,c); if (a>b) and (b>c) then begin a:=a*a; b:=b*b; http://www.cyberforum.ru/cpp-beginners/thread600847.html
C++ Дано скобочное выражение, оканчивающееся точкой с запятой
Дано скобочное выражение, оканчивающееся точкой с запятой. Определить: количество уровней вложенности скобок в выражении.
C++ Как вывести текст ?
Здравствуйте. Не пинайте за такой простой вопрос. хочу елементарно вывести текст на екран. пишу так : cout << "Hello"; пишет Undefined symbol 'cout'; У меня C Builder 6
C++ Подправить программу( конкретно сделать ввод с клавы вместо обычно) http://www.cyberforum.ru/cpp-beginners/thread600797.html
есть готовая программа которая выводит дерево методом вставки в лист ,и затем показывает его обратный обход. необходимо исправить ,чтобы дерево выводилось с клавиатуры #include <iostream> #include <string> #include <STDLIB.H> #include <stdio.h> #include <time.h> #include <fstream> using namespace std;
C++ Вывод в файл! Ребят, помогите разобраться с одной задачей, которая попалась мне во время сегодняшнего экзамена! Вводится n найти сумму n слогаемых s=1+1/2+1/3+...+1/n выводить во внешний файл все частные значения сумм в формате с фиксированной точкой с пятью цифрами в дробной части!! ------------------------------------------------------------------------------------------------------------- по словам... подробнее

Показать сообщение отдельно
Zhalair
1 / 1 / 0
Регистрация: 04.11.2011
Сообщений: 40
08.06.2012, 20:24     Седловая точка
Дана целочисленная матрица размера M × N. Найти элемент, являю-щийся максимальным в своей строке и минимальным в своем столбце. Ес-ли такой элемент отсутствует, то вывести 0.

Почему не может вывести эту седловую точку?

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
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
#include <iostream>
 
using namespace std;
void main ()
 
{
    int a[256][256];
    int i , j , s, n, m;
    int min, max;
    
    cout<<"N=";
    cin>>n;
    cout<<"M=";
    cin>>m;
 
    cout<<"1=dlya random, 2= dlya ruchnogo vvoda";
        cin>>s;
 
    for (i=0;i<n;i++)
    
    {
        for (j=0;j<m;j++)
 
            if (s==1)
 
            {
                for (i=0;i<n;i++)
 
                {
                    for (j=0;j<m;j++)
 
                        a[i][j]=rand()%(5+7+4+3-1);
                }
            }
 
             if (s==2)
 
             {
                 for (i=0;i<n;i++)
                     for (j=0;j<m;j++){
                         cout<<"a["<<i<<"]["<<j<<"]=";
 
                         cin>>a[i][j];}
                 
             }  
            
    }
 
    for (i=0;i<n;i++)
 
    {
         for (j=0;j<m;j++)
             cout<<a[i][j]<<"\t";
         cout<<endl;
    }
    
    for(i=0;i<n;++i)
    {
        max=a[i][0];
       
        for(j=0;j<m;++j){
        
            cout<<a[i][j]<<"\t";
            
            if(max<a[i][j])
            
                max=a[i][j];
        }
        cout<<"  Max: "<<max<<"\n\n";
    }
    cout<<"\n";
 
 
    for (i=0;i<n;i++)
 
    {
         for (j=0;j<m;j++)
             cout<<a[i][j]<<"\t";
         cout<<endl;
    }
    
    for(i=0;i<n;++i)
    {
        min=a[i][0];
       
        for(j=0;j<m;++j){
        
            cout<<a[i][j]<<"\t";
            
            if(min>a[i][j])
            
                min=a[i][j];
        }
        cout<<"  Min: "<<min<<"\n\n";
    }
    cout<<"\n";
 
 
        for (i=0;i<n;i++)
        {
            for (j=0;j<m;j++)
            {
                if (a[i][j]==min && a[i][j]==max)
                {
                    cout<<"Sedlovaya tochka =  "<<a[i][j];
                }
            }
        }
 
 
 
}
Добавлено через 32 минуты
Я подкорректировал но точку все равно выводить не хочет

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
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
#include <iostream>
 
using namespace std;
void main ()
 
{
    int a[256][256];
    int i , j , s, n, m;
    int min, max;
    
    cout<<"N=";
    cin>>n;
    cout<<"M=";
    cin>>m;
 
    cout<<"1=dlya random, 2= dlya ruchnogo vvoda";
        cin>>s;
 
    for (i=0;i<n;i++)
    
    {
        for (j=0;j<m;j++)
 
            if (s==1)
 
            {
                for (i=0;i<n;i++)
 
                {
                    for (j=0;j<m;j++)
 
                        a[i][j]=rand()%(5+7+4+3-1);
                }
            }
 
             if (s==2)
 
             {
                 for (i=0;i<n;i++)
                     for (j=0;j<m;j++){
                         cout<<"a["<<i<<"]["<<j<<"]=";
 
                         cin>>a[i][j];}
                 
             }  
            
    }
 
    for (i=0;i<n;i++)
 
    {
         for (j=0;j<m;j++)
             cout<<a[i][j]<<"\t";
         cout<<endl;
    }
    
    for(i=0;i<n;++i)
    {
        max=a[i][0];
       
        for(j=0;j<m;++j){
        
            cout<<a[i][j]<<"\t";
            
            if(max<a[i][j])
            
                max=a[i][j];
        }
        cout<<"  Max: "<<max<<"\n\n";
    }
    cout<<"\n";
 
 
    for (i=0;i<n;i++)
 
    {
         for (j=0;j<m;j++)
             cout<<a[i][j]<<"\t";
         cout<<endl;
    }
    
    for(j=0;j<m;j++)
 
    {
        min=a[0][j];
            for(i=0;i<n;i++)
       
       
        {
        
            cout<<a[j][i]<<"\t";
            
            if(min>a[i][j])
            
                min=a[i][j];
        }
        cout<<"  Min: "<<min<<"\n\n";
    }
    cout<<"\n";
 
 
 
        for (i=0;i<n;i++)
        {
            for (j=0;j<m;j++)
            {
                if (min==a[i][j] && max==a[i][j])
                {
                    cout<<"Sedlovaya tochka =  "<<a[i][j];
                }
                
            }
        }
 
 
}
Добавлено через 19 минут
Все я нашел седловую точку
Как сделать что бы в случае неужачи выводил один 0 а не кучу
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
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
#include <iostream>
#define n 3
#define m 3
using namespace std;
void main ()
 
{
    int a[256][256];
    int i , j , s;
    int min[m], max[n];
    
    
 
 
    cout<<"1=dlya random, 2= dlya ruchnogo vvoda";
        cin>>s;
 
    for (i=0;i<n;i++)
    
    {
        for (j=0;j<m;j++)
 
            if (s==1)
 
            {
                for (i=0;i<n;i++)
 
                {
                    for (j=0;j<m;j++)
 
                        a[i][j]=rand()%(5+7+4+3-1);
                }
            }
 
             if (s==2)
 
             {
                 for (i=0;i<n;i++)
                     for (j=0;j<m;j++){
                         cout<<"a["<<i<<"]["<<j<<"]=";
 
                         cin>>a[i][j];}
                 
             }  
            
    }
    for (i=0;i<n;i++)
 
    {
         for (j=0;j<m;j++)
             cout<<a[i][j]<<"\t";
         cout<<endl;
    }
    
    for(i=0;i<n;++i)
    {
        max[i]=a[i][0];
       
        for(j=0;j<m;++j){
        
            cout<<a[i][j]<<"\t";
            
            if(max[i]<a[i][j])
            
                max[i]=a[i][j];
        }
        cout<<"  Max: "<<max[i]<<"\n\n";
    }
    cout<<"\n";
 
    for(j=0;j<m;j++)
 
    {
        min[j]=a[0][j];
            for(i=0;i<n;i++)
       
       
        {
        
            cout<<a[j][i]<<"\t";
            
            if(min[j]>a[i][j])
            
                min[j]=a[i][j];
        }
        cout<<"  Min: "<<min[j]<<"\n\n";
    }
    cout<<"\n";
 
 
    for(i=0;i<n;i++)
    {
        for(j=0;j<m;j++)
        {
            if(a[i][j]==min[j] && a[i][j]==max[i])
            {
                cout<<a[i][j];
                cout<<"\n";
            }
            
        }
    }
 
}
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
 
Текущее время: 06:09. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru