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

Ошибка в коде. не найден оператор, принимающий правый операнд типа 'int' - C++

Восстановить пароль Регистрация
 
4ch
19 / 19 / 0
Регистрация: 24.10.2012
Сообщений: 72
15.04.2013, 22:33     Ошибка в коде. не найден оператор, принимающий правый операнд типа 'int' #1
Доброго времени суток. Не понимат что за ошибка: error C2679: бинарный '>': не найден оператор, принимающий правый операнд типа 'int' (или приемлемое преобразование отсутствует). Да и вообще, правильно ли составлена программа, если задание - нахождение количества положительных и отрицательных елементов матриц.

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
#include <iostream>
#include <conio.h>
#include <iomanip>
 
using namespace std;
 
const int n = 50;
const int m = 50;
 
void enter(int a[][m], int, int);
void print(int a[][m], int, int);
void change(int a[][m], int, int);
 
void main()
{
setlocale(LC_CTYPE, "russian");
 
int A[n][m], Y[n][m], C[n][m];
int n, m, N, M, str, stl;
 
cout<<"Введите к-во строк матрицы А: "<<endl;
cin>>n;
cout<<"Введите к-во столбцов матрицы А: "<<endl;
cin>>m;
cout<<"Введите массив А: "<<endl;
enter(A, n, m);
cout<<endl<<endl;
cout<<"Введите к-во строк матрицы Y: "<<endl;
cin>>N;
cout<<"Введите к-во столбцов матрицы Y: "<<endl;
cin>>M;
cout<<"Введите массив Y: "<<endl;
enter(Y, N, M);
cout<<endl<<endl;
cout<<"Введите к-во строк матрицы C: "<<endl;
cin>>str;
cout<<"Введите к-во столбцов матрицы C: "<<endl;
cin>>stl;
cout<<"Введите массив C: "<<endl;
enter(C, str, stl);
system("cls");
cout<<"Л787878(11)\n";
cout<<"С787878\n";
cout<<"787878.\n\n";
cout<<"Массив А:"<<endl<<endl;
print(A, n, m);
change(A, n, m);
cout<<endl<<endl;
cout<<"Массив Y:"<<endl<<endl;
print(Y, N, M);
change(Y, N, M);
cout<<endl<<endl;
cout<<"Массив C:"<<endl<<endl;
print(C, stl, str);
change(C, str, stl);
cout<<endl<<endl;
system("pause");
}
 
void vvod(int a[][m], int n, int m)
{
for(int i=0; i<n; i++)
{
for(int j=0; j<m; j++)
{
cout<<"["<<i+1<<","<<j+1<<"]=";
cin>>a[i][j];
}
}
}
void vyvod(int a[][m], int n, int m)
{
for(int i=0; i<n; i++)
{
cout<<endl;
for(int j=0; j<m; j++)
cout<<" ["<<i+1<<","<<j+1<<"]="<<a[i][j];
}
}
void poisk(int a[][m], int n, int m)
{
int pol,otr,k;
int j,i;
for (j=0;j<m;j++)
for (i=0;i<m;i++)
{
if (a[i][j]>0) 
k++;;
cout<<"kol-vo pol"<<endl;
cin>a[i][j];
if (a[i][j]<0)
k++;
cout<<"kol-vo otr"<<endl;
cin>a[i][j];
 
 
}
}
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
15.04.2013, 22:33     Ошибка в коде. не найден оператор, принимающий правый операнд типа 'int'
Посмотрите здесь:

C++ Исправить ошибку:error C2678: бинарный ">>": не найден оператор, принимающий левый операнд типа "std::istream"
C++ Ошибка : бинарный "<<": не найден оператор, принимающий правый операнд типа point
C++ Error C2678: бинарный ">>": не найден оператор, принимающий левый операнд типа "std::istream"
C++ Конструкторы, приведение типа и ошибка "Не найден оператор, принимающий правый операнд типа 'char *'"
Error C2678: бинарный "<<": не найден оператор, принимающий левый операнд типа "std::ifstream" C++
Бинарный ">>": не найден оператор, принимающий левый операнд типа "std::istream" C++
Error C2679: бинарный ">>": не найден оператор, принимающий правый операнд C++
C++ Не найден оператор, принимающий правый операнд

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

Или воспользуйтесь поиском по форуму:
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
Ded_Vasilij
 Аватар для Ded_Vasilij
229 / 211 / 15
Регистрация: 01.09.2012
Сообщений: 2,103
16.04.2013, 06:30     Ошибка в коде. не найден оператор, принимающий правый операнд типа 'int' #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
//я бы сделал так:
 
int main()
{
int m = 0;
int n = 0;
int A[m][n];
cin>>m;
cin >> n;
|for (int i = 0; i < m; i++)
    for (int j = 0; j < n; j++)
      {
           cin>>A[i][j];
       }
int count1 = 0;
int count2 = 0;
for (int i = 0; i < m; i++)
    for (int j = 0; j < n; j++)
      {
           if (A[i][j] > 0) {count1++}
           if (A[i][j] < 0) {count2++}
           cout<<A[i][j]<<"\t";
       }
     cout << "\nположительных "<< count1 << endl;
     cout << "\nотрицательных "<< count2 << endl;
}
Yandex
Объявления
16.04.2013, 06:30     Ошибка в коде. не найден оператор, принимающий правый операнд типа 'int'
Ответ Создать тему
Опции темы

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