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

Найти максимум и минимум в двумерном массиве - C++

Восстановить пароль Регистрация
 
Vladislavv
0 / 0 / 0
Регистрация: 30.07.2014
Сообщений: 98
19.08.2014, 19:34     Найти максимум и минимум в двумерном массиве #1
где ошибка

Спрашивает, как заполнить двум массив, ищет max и min



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
#include <iostream>
#include <ctime>
using namespace std;
 
template <typename T>
void afill(T ar[][10], int n);
template <typename T>
void fill (T ar[][10], int n);
template <typename T>
T mx (T ar[][10]);
template <typename T>
T mn (T ar[][10]);
template <typename T>
void printar (T ar[][10], int n);
template <typename T>
T ft (T a);
void choise (int n);
 
 
void main(){
const int n=10;
int e=n;
srand (time(NULL));
int ar[n][n];
cout <<"Would you put figures by yourself?\n1-yes\n0-no\n";
choise(e);
mn(ar);
mx (ar);
}
 
template <typename T>
void choise(int n){
bool a=0;
cin >>a;
if (a==0)
void afill (ar[][n], n);
else
void fill (ar[][n], n);
 
}
 
 
template <typename T>
void afill (T ar[][10], int n){
    for (int i=0; i<n; i++){
        for (int j=0; j<n; j++)
ar [i][j]=rand ()%100;  
    }
}
 
    template <typename T>
    void  fill (T ar[][10], int n){
        for (int i=0; i<n; i++){
        for (int j=0; j<n; j++ ){
            cout<<"input figure\n";
            cin >>ar[i][j];
        }
        }
    }
 
template <typename T>
    void mx (T ar[][10], int n){
    T max=0;
    for (int i=0; i<n; i++){
        for (int j=0; j<n; j++ ){
            if (i==0&&j==0)
                max=ar[i][j];
            else{
                if (max>ar[i][j])
                    max=ar[i][j];}
    } 
    }
cout <<"max is "<<max<<endl;
    }
 
 
    template <typename T>
    void mn (T ar[][10], int n){
    T min=0;
    for (int i=0; i<n; i++){
        for (int j=0; j<n; j++ ){
            if (i==0&&j==0)
                min=ar[i][j];
            else{
                if (min>ar[i][j])
                    min=ar[i][j];}
    } 
    }
cout <<"min is "<<min<<endl;
    }
 
    template <typename T>
    void printar (T ar[][10], int n){
    for (int i=0; i<n; i++){
        for (int j=0; j<n; j++)
            cout<<ar[i][j]<<"\t";
        cout <<endl;
        }
    }
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
19.08.2014, 19:34     Найти максимум и минимум в двумерном массиве
Посмотрите здесь:

Найти в двухмерном массиве максимум и минимум, и поменять их местами C++
Как найти глобальные минимум и максимум в массиве? C++
Нужно написать программу, которая находит минимум и максимум в двумерном массиве и меняет их местами C++
C++ Минимум и максимум в двумерном массиве
Найти максимум и минимум в массиве и поменять их местами C++
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
Евгений89
 Аватар для Евгений89
99 / 99 / 9
Регистрация: 17.04.2011
Сообщений: 554
Завершенные тесты: 2
19.08.2014, 22:13     Найти максимум и минимум в двумерном массиве #2
лог ошибки пердоставьте.
Donnerwetter
40 / 40 / 12
Регистрация: 04.02.2014
Сообщений: 144
19.08.2014, 23:04     Найти максимум и минимум в двумерном массиве #3
Vladislavv, обратите внимание на функции mx и mn. В прототипах и в main они получают один аргумент - массив. А в описаниях функций - уже два аргумента - массив и размер.
Vladislavv
0 / 0 / 0
Регистрация: 30.07.2014
Сообщений: 98
20.08.2014, 00:06  [ТС]     Найти максимум и минимум в двумерном массиве #4
большинство ошибок убрал, остались только:
Ошибка 3 error LNK1120: 1 неразрешенных внешних элементов1
Ошибка 2 error LNK2019: ссылка на неразрешенный внешний символ "void __cdecl choise(int)" (?choise@@YAXH@Z) в функции _main

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
#include <iostream>
#include <ctime>
using namespace std;
 
template <typename T>
void afill(T ar[][10], int n);
template <typename T>
void fill (T ar[][10], int n);
template <typename T>
void mx (T ar[][10], int n);
template <typename T>
void mn (T ar[][10], int n);
template <typename T>
void printar (T ar[][10], int n);
template <typename T>
T ft (T a);
void choise (int n);
 
 
void main(){
const int n=10;
int e=n;
srand (time(NULL));
int ar[n][n];
cout <<"Would you put figures by yourself?\n1-yes\n0-no\n";
choise(e);
mn(ar, n);
mx (ar, n);
}
 
template <typename T>
void choise(int n){
bool a=0;
int c=n;
cin >>a;
if (a==0)
void afill (ar, n);
else
void fill (ar, n);
 
}
 
 
template <typename T>
void afill (T ar[][10], int n){
    for (int i=0; i<n; i++){
        for (int j=0; j<n; j++)
ar [i][j]=rand ()%100;  
    }
}
 
    template <typename T>
    void  fill (T ar[][10], int n){
        for (int i=0; i<n; i++){
        for (int j=0; j<n; j++ ){
            cout<<"input figure\n";
            cin >>ar[i][j];
        }
        }
    }
 
template <typename T>
    void mx (T ar[][10], int n){
    T max=0;
    for (int i=0; i<n; i++){
        for (int j=0; j<n; j++ ){
            if (i==0&&j==0)
                max=ar[i][j];
            else{
                if (max>ar[i][j])
                    max=ar[i][j];}
    } 
    }
cout <<"max is "<<max<<endl;
    }
 
 
    template <typename T>
    void mn (T ar[][10], int n){
    T min=0;
    for (int i=0; i<n; i++){
        for (int j=0; j<n; j++ ){
            if (i==0&&j==0)
                min=ar[i][j];
            else{
                if (min>ar[i][j])
                    min=ar[i][j];}
    } 
    }
cout <<"min is "<<min<<endl;
    }
 
    template <typename T>
    void printar (T ar[][10], int n){
    for (int i=0; i<n; i++){
        for (int j=0; j<n; j++)
            cout<<ar[i][j]<<"\t";
        cout <<endl;
        }
    }
John Prick
754 / 687 / 123
Регистрация: 27.07.2012
Сообщений: 1,974
Завершенные тесты: 3
20.08.2014, 00:13     Найти максимум и минимум в двумерном массиве #5
У тебя нет определения (реализации) функции void choise(int). Есть только какая-то шаблонная функция, перед заголовком которой надо просто убрать template <typename T>, чтобы ошибка исправилась.
Vladislavv
0 / 0 / 0
Регистрация: 30.07.2014
Сообщений: 98
20.08.2014, 19:44  [ТС]     Найти максимум и минимум в двумерном массиве #6
после некоторого редактирования дает такие ошибки: 6 IntelliSense: incomplete type is not allowed c:\users\влад\documents\visual studio 2010\projects\dz 18.08.14\dz 18.08.14\1.cpp 30
8 IntelliSense: incomplete type is not allowed c:\users\влад\documents\visual studio 2010\projects\dz 18.08.14\dz 18.08.14\1.cpp 32
7 IntelliSense: expected a ')' c:\users\влад\documents\visual studio 2010\projects\dz 18.08.14\dz 18.08.14\1.cpp 30
9 IntelliSense: expected a ')' c:\users\влад\documents\visual studio 2010\projects\dz 18.08.14\dz 18.08.14\1.cpp 32
Ошибка 4 error C2182: fill: недопустимое использование типа "void" c:\users\влад\documents\visual studio 2010\projects\dz 18.08.14\dz 18.08.14\1.cpp 32
Ошибка 2 error C2182: afill: недопустимое использование типа "void" c:\users\влад\documents\visual studio 2010\projects\dz 18.08.14\dz 18.08.14\1.cpp 30
Ошибка 3 error C2078: слишком много инициализаторов c:\users\влад\documents\visual studio 2010\projects\dz 18.08.14\dz 18.08.14\1.cpp 30
Ошибка 5 error C2078: слишком много инициализаторов c:\users\влад\documents\visual studio 2010\projects\dz 18.08.14\dz 18.08.14\1.cpp 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
#include <iostream>
#include <ctime>
using namespace std;
 
template <typename T>
void afill(T ar[][10], int n);
template <typename T>
void fill (T ar[][10], int n);
template <typename T>
void mx (T ar[][10], int n);
template <typename T>
void mn (T ar[][10], int n);
template <typename T>
void printar (T ar[][10], int n);
template <typename T>
T ft (T a);
template <typename T>
T choise (T ar[][10], int n);
 
 
void main(){
const int n=10;
int e=n;
int ch=0;
srand (time(NULL));
int ar[n][n];
cout <<"Would you put figures by yourself?\n1-yes\n0-no\n";
ch=choise(ar, e);
if (ch==0)
void afill (ar, n);
else
void fill (ar, n);
mn(ar, n);
mx (ar, n);
}
 
template <typename T>
T choise(T ar[][10], int n){
bool a=0;
int c=n;
cin >>a;
return a;
}
 
 
template <typename T>
void afill (T ar[][10], int n){
    for (int i=0; i<n; i++){
        for (int j=0; j<n; j++)
ar [i][j]=rand ()%100;  
    }
}
 
    template <typename T>
    void  fill (T ar[][10], int n){
        for (int i=0; i<n; i++){
        for (int j=0; j<n; j++ ){
            cout<<"input figure\n";
            cin >>ar[i][j];
        }
        }
    }
 
template <typename T>
    void mx (T ar[][10], int n){
    T max=0;
    for (int i=0; i<n; i++){
        for (int j=0; j<n; j++ ){
            if (i==0&&j==0)
                max=ar[i][j];
            else{
                if (max>ar[i][j])
                    max=ar[i][j];}
    } 
    }
cout <<"max is "<<max<<endl;
    }
 
 
    template <typename T>
    void mn (T ar[][10], int n){
    T min=0;
    for (int i=0; i<n; i++){
        for (int j=0; j<n; j++ ){
            if (i==0&&j==0)
                min=ar[i][j];
            else{
                if (min>ar[i][j])
                    min=ar[i][j];}
    } 
    }
cout <<"min is "<<min<<endl;
    }
 
    template <typename T>
    void printar (T ar[][10], int n){
    for (int i=0; i<n; i++){
        for (int j=0; j<n; j++)
            cout<<ar[i][j]<<"\t";
        cout <<endl;
        }
    }
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
20.08.2014, 21:39     Найти максимум и минимум в двумерном массиве
Еще ссылки по теме:

C++ Найти максимум и минимум в массиве, отсортировать массив
C++ В одномерном массиве найти максимум/минимум, среднее арифметическое
В двумерном массиве определить среднее арифметическое каждого столбца и максимум и минимум каждой строки C++

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

Или воспользуйтесь поиском по форуму:
John Prick
754 / 687 / 123
Регистрация: 27.07.2012
Сообщений: 1,974
Завершенные тесты: 3
20.08.2014, 21:39     Найти максимум и минимум в двумерном массиве #7
Без тэгов и с таким форматированием разбираться с кодом невозможно.
Yandex
Объявления
20.08.2014, 21:39     Найти максимум и минимум в двумерном массиве
Ответ Создать тему
Опции темы

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