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

Нужно исправить ошибки - C++

Восстановить пароль Регистрация
 
fReekufa
0 / 0 / 0
Регистрация: 15.10.2013
Сообщений: 39
03.11.2013, 11:03     Нужно исправить ошибки #1
Вот программа на c++ 6.0 выдает 6 ошибок и 1 warning, исправьте пожалуйста а то я уже 2 часа сижу вникнуть не могу
C++ (Qt)
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
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
#include <iostream.h>
#include <stdlib.h>
#include <time.h>
#include <iomanip.h>
#include <fstream>
 
using namespace std;
 
int mod(int x,int y)
{
    int s=1;
    for(int i=1;i<=y;i++)
    s*=x;
return s;
}
void setFile(int sizeX,int sizeY)
{
cout<<"Created file \"text.txt\""<<endl;
ofstream file;
file.open("text.txt");
int* *b=new int*[sizeY];
 
    for (int y=0;y<sizeY;y++)
    {
    int* a=new int[sizeX];
        for(int x=0;x<sizeX;x++)
        {
        a[x]=1+rand()% 20000;
        }
    b[y]=&a[0];
    }
 
    for (int y=0;y<sizeY;y++)
    {
        for(int x=0;x<sizeX;x++)
        file<<setw(5)<<*(b[y]+x)<<" ";
    file<<"\n";
    }
    cout<<endl;
    file.close();
}
 
 
void readFile(int* b[],int sizeY, int sizeX)
{
ifstream file;
file.open("text.txt");
cout<<endl;
cout<<endl;
        for(int y=0;y<sizeY;y++)
        {
            int* a=new int[sizeX];
            for(int x=0;x<sizeX;x++)
            {
                file>>a[x];
            }
        b[y]=&a[0];
        }
    for (int y=0;y<sizeY;y++)
    {
        for(int x=0;x<sizeX;x++)
        cout<<setw(6)<<*(b[y]+x)<<" ";
    cout<<endl;
    }
}
 
void find(int* b[],int sizeX,int sizeY,int value)
{
cout<<"valie is :"<<value<<endl;
int c=0;
    for (int y=0;y<sizeY;y++)
    {
        for(int x=0;x<sizeX;x++)
        cout<<setw(6)<<*(b[y]+x)<<" ";
    cout<<endl;
    }
cout<<"\n\n";
    for (int y=0;y<sizeY;y++)
    {
        for(int x=0;x<sizeX;x++)
        {
            for (int counter=1;counter<=9;counter++)
                if (((*(b[y]+x))/(mod(10,counter)))==value)
                {
 
                c++;
                }
        }
    }
 
    if (c==0)
    cout<<"Sorry , but value = "<<value<<" haven't result :-("<<endl;
cout<<"number of answers: "<<c<<endl;
int *arrayValue=new int[c];
c=0;
    for (int y=0;y<sizeY;y++)
    {
        for(int x=0;x<sizeX;x++)
        {
            for (int counter=1;counter<=9;counter++)
                if (((*(b[y]+x))/(mod(10,counter)))==value)
                {
                cout<< *(b[y]+x)<<" \n";
                arrayValue[c]=*(b[y]+x);
                c++;
                }
        }
    }
 
ofstream file2;
file2.open("result.txt");
cout<<"Created file:\"result.txt\""<<endl;
    for (int y=0;y<c;y++)
    {
    file2<<arrayValue[y]<<" ";
    }
 
}
 
 
int main()
{
srand(time(0));
int sizeX,sizeY,value;
cout<<"Enter size x:";
cin>>sizeX;
cout<<"Enter size Y:";
cin>>sizeY;
int* *b=new int*[sizeY];
 
cout<<"\nfunction setFile:";
setFile(sizeX,sizeY);
cout<<"\nfunction read";
readFile(b,sizeY, sizeX);
 
cout<<"\Please enter find value:";
cin>>value;
cout<<"\nfunction find:\n";
find(b,sizeX,sizeY,value);
 
delete[]b;
return 0;
}
Вот ошибки
Compiling...
Cpp3.cpp
c:\users\teacher\desktop\êóðñà÷\cpp3.cpp(33) : error C2374: 'y' : redefinition; multiple initialization
c:\users\teacher\desktop\êóðñà÷\cpp3.cpp(23) : see declaration of 'y'
c:\users\teacher\desktop\êóðñà÷\cpp3.cpp(36) : error C2679: binary '<<' : no operator defined which takes a right-hand operand of type 'class __SMANIP_int' (or there is no acceptable conversion)
c:\users\teacher\desktop\êóðñà÷\cpp3.cpp(59) : error C2374: 'y' : redefinition; multiple initialization
c:\users\teacher\desktop\êóðñà÷\cpp3.cpp(50) : see declaration of 'y'
c:\users\teacher\desktop\êóðñà÷\cpp3.cpp(78) : error C2374: 'y' : redefinition; multiple initialization
c:\users\teacher\desktop\êóðñà÷\cpp3.cpp(71) : see declaration of 'y'
c:\users\teacher\desktop\êóðñà÷\cpp3.cpp(96) : error C2374: 'y' : redefinition; multiple initialization
c:\users\teacher\desktop\êóðñà÷\cpp3.cpp(71) : see declaration of 'y'
c:\users\teacher\desktop\êóðñà÷\cpp3.cpp(113) : error C2374: 'y' : redefinition; multiple initialization
c:\users\teacher\desktop\êóðñà÷\cpp3.cpp(71) : see declaration of 'y'
c:\users\teacher\desktop\êóðñà÷\cpp3.cpp(136) : warning C4129: 'P' : unrecognized character escape sequence
Error executing cl.exe.

Cpp3.exe - 6 error(s), 1 warning(s)
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
Tulosba
:)
Эксперт С++
4378 / 3221 / 297
Регистрация: 19.02.2013
Сообщений: 9,044
03.11.2013, 11:10     Нужно исправить ошибки #2
Цитата Сообщение от fReekufa Посмотреть сообщение
#include <iostream.h>
на каком допотопстве Вы это собираете?
Меняем хедеры и, по крайней мере, всё собирается.
http://ideone.com/0ANMMb
fReekufa
0 / 0 / 0
Регистрация: 15.10.2013
Сообщений: 39
03.11.2013, 11:13  [ТС]     Нужно исправить ошибки #3
Цитата Сообщение от Tulosba Посмотреть сообщение
на каком допотопстве Вы это собираете?
Мне сделали эту программу, но походу ее делали на новых версиях с++, а библиотеки отличаются в 6.0 вот я и начал перебирать))
Tulosba
:)
Эксперт С++
4378 / 3221 / 297
Регистрация: 19.02.2013
Сообщений: 9,044
03.11.2013, 11:24     Нужно исправить ошибки #4
Цитата Сообщение от fReekufa Посмотреть сообщение
6.0
это что?
fReekufa
0 / 0 / 0
Регистрация: 15.10.2013
Сообщений: 39
03.11.2013, 11:29  [ТС]     Нужно исправить ошибки #5
Цитата Сообщение от Tulosba Посмотреть сообщение
это что?
C++ 6.0, старая версия нас на них заставляют работать

Добавлено через 3 минуты
Цитата Сообщение от Tulosba Посмотреть сообщение
это что?
Вот моя задача
В массиве целых чисел,расположенном в файле(кол-во чисел в фале произв-ое) найти все числа,начинающихся с цифры выбранной пользователем.Числа сильно различаются по величине(по кол-ву цифр в их написании).Предусмотреть ввод исходных данных из файла и генерацию этого файла с помощью генератора псевдослучайных чисел.Результат также сохранить в файле и вывести на экран
вот что я сделал сам
C++ (Qt)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
#include <stdio.h>
#include <stdlib.h>
#include <time.h>
#include <iostream.h>
const int n=3;
  int i,j;
  double A[n][n];
void main()
{
    srand((unsigned)time(NULL));
    for (i=0; i<n; i++)
      for (j=0; j<n; j++)
          A[i][j]=rand()% 20000 -100;
      FILE*f;
      char fname[]="C:\\\\data.txt\0";
      f=fopen(fname, "w");
      for (i=0; i<n; i++)
          for (j=0; j<n; j++)
      fprintf(f,"%.0f\n",A[i][j]);
      fclose(f);
      cout<<"File is saved to disk C"<<endl;
}
А дальше я незнаю как делать
Tulosba
:)
Эксперт С++
4378 / 3221 / 297
Регистрация: 19.02.2013
Сообщений: 9,044
03.11.2013, 11:29     Нужно исправить ошибки #6
Цитата Сообщение от fReekufa Посмотреть сообщение
C++ 6.0, старая версия нас на них заставляют работать
Бедняги. Тогда попробуйте все строки с циклами вида
C++
1
for (int y=0; ...
заменить на
C++
1
for (y=0;
а в начале функции, где используется цикл, написать
C++
1
int y;
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
03.11.2013, 11:40     Нужно исправить ошибки
Еще ссылки по теме:

Нужно исправить ошибки C++
Нужно исправить ошибки) C++
Нужно исправить ошибки в программе конструкторе C++

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

Или воспользуйтесь поиском по форуму:
fReekufa
0 / 0 / 0
Регистрация: 15.10.2013
Сообщений: 39
03.11.2013, 11:40  [ТС]     Нужно исправить ошибки #7
Цитата Сообщение от Tulosba Посмотреть сообщение
Бедняги. Тогда попробуйте все строки с циклами вида
C++
1
for (int y=0; ...
заменить на
C++
1
for (y=0;
а в начале функции, где используется цикл, написать
C++
1
int y;
Заменил, осталось 2 ошибки

C++ (Qt)
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
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
#include <iostream.h>
#include <stdlib.h>
#include <time.h>
#include <iomanip.h>
#include <fstream>
 
using namespace std;
 
int mod(int x,int y)
{
    int s=1;
    for(int i=1;i<=y;i++)
    s*=x;
return s;
}
void setFile(int sizeX,int sizeY)
{
int y;
int x;
cout<<"Created file \"text.txt\""<<endl;
ofstream file;
file.open("text.txt");
int* *b=new int*[sizeY];
 
    for (y=0;y<sizeY;y++)
    {
    int* a=new int[sizeX];
        for(x=0;x<sizeX;x++)
        {
        a[x]=1+rand()% 20000;
        }
    b[y]=&a[0];
    }
 
    for (y=0;y<sizeY;y++)
    {
        for(x=0;x<sizeX;x++)
        file<<setw(5)<<*(b[y]+x)<<" ";
    file<<"\n";
    }
    cout<<endl;
    file.close();
}
 
 
void readFile(int* b[],int sizeY, int sizeX)
{
int y;
int x;
ifstream file;
file.open("text.txt");
cout<<endl;
cout<<endl;
        for(y=0;y<sizeY;y++)
        {
            int* a=new int[sizeX];
            for(x=0;x<sizeX;x++)
            {
                file>>a[x];
            }
        b[y]=&a[0];
        }
    for (y=0;y<sizeY;y++)
    {
        for(x=0;x<sizeX;x++)
        cout<<setw(6)<<*(b[y]+x)<<" ";
    cout<<endl;
    }
}
 
void find(int* b[],int sizeX,int sizeY,int value)
{
int y;
int x;
cout<<"valie is :"<<value<<endl;
int c=0;
    for (y=0;y<sizeY;y++)
    {
        for(x=0;x<sizeX;x++)
        cout<<setw(6)<<*(b[y]+x)<<" ";
    cout<<endl;
    }
cout<<"\n\n";
    for (y=0;y<sizeY;y++)
    {
        for(x=0;x<sizeX;x++)
        {
            for (counter=1;counter<=9;counter++)
                if (((*(b[y]+x))/(mod(10,counter)))==value)
                {
 
                c++;
                }
        }
    }
 
    if (c==0)
    cout<<"Sorry , but value = "<<value<<" haven't result :-("<<endl;
cout<<"number of answers: "<<c<<endl;
int *arrayValue=new int[c];
c=0;
    for (y=0;y<sizeY;y++)
    {
        for(x=0;x<sizeX;x++)
        {
            for (counter=1;counter<=9;counter++)
                if (((*(b[y]+x))/(mod(10,counter)))==value)
                {
                cout<< *(b[y]+x)<<" \n";
                arrayValue[c]=*(b[y]+x);
                c++;
                }
        }
    }
 
ofstream file2;
file2.open("result.txt");
cout<<"Created file:\"result.txt\""<<endl;
    for (y=0;y<c;y++)
    {
    file2<<arrayValue[y]<<" ";
    }
 
}
 
 
int main()
{
srand(time(0));
int sizeX,sizeY,value;
cout<<"Enter size x:";
cin>>sizeX;
cout<<"Enter size Y:";
cin>>sizeY;
int* *b=new int*[sizeY];
 
cout<<"\nfunction setFile:";
setFile(sizeX,sizeY);
cout<<"\nfunction read";
readFile(b,sizeY, sizeX);
 
cout<<"\Please enter find value:";
cin>>value;
cout<<"\nfunction find:\n";
find(b,sizeX,sizeY,value);
 
delete[]b;
return 0;
}
Вот ошибки Compiling...
Cpp3.cpp
C:\Users\Teacher\Desktop\Êóðñà÷\Cpp3.cpp(38) : error C2679: binary '<<' : no operator defined which takes a right-hand operand of type 'class __SMANIP_int' (or there is no acceptable conversion)
C:\Users\Teacher\Desktop\Êóðñà÷\Cpp3.cpp(88) : error C2065: 'counter' : undeclared identifier
C:\Users\Teacher\Desktop\Êóðñà÷\Cpp3.cpp(142) : warning C4129: 'P' : unrecognized character escape sequence
Error executing cl.exe.

Добавлено через 6 минут
[QUOTE=fReekufa;5277911]Заменил, осталось 2 ошибки

C++ (Qt)
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
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
#include <iostream.h>
#include <stdlib.h>
#include <time.h>
#include <iomanip.h>
#include <fstream>
 
using namespace std;
 
int mod(int x,int y)
{
    int s=1;
    for(int i=1;i<=y;i++)
    s*=x;
return s;
}
void setFile(int sizeX,int sizeY)
{
int y;
int x;
cout<<"Created file \"text.txt\""<<endl;
ofstream file;
file.open("text.txt");
int* *b=new int*[sizeY];
 
    for (y=0;y<sizeY;y++)
    {
    int* a=new int[sizeX];
        for(x=0;x<sizeX;x++)
        {
        a[x]=1+rand()% 20000;
        }
    b[y]=&a[0];
    }
 
    for (y=0;y<sizeY;y++)
    {
        for(x=0;x<sizeX;x++)
        file<<setw(5)<<*(b[y]+x)<<" ";
    file<<"\n";
    }
    cout<<endl;
    file.close();
}
 
 
void readFile(int* b[],int sizeY, int sizeX)
{
int y;
int x;
ifstream file;
file.open("text.txt");
cout<<endl;
cout<<endl;
        for(y=0;y<sizeY;y++)
        {
            int* a=new int[sizeX];
            for(x=0;x<sizeX;x++)
            {
                file>>a[x];
            }
        b[y]=&a[0];
        }
    for (y=0;y<sizeY;y++)
    {
        for(x=0;x<sizeX;x++)
        cout<<setw(6)<<*(b[y]+x)<<" ";
    cout<<endl;
    }
}
 
void find(int* b[],int sizeX,int sizeY,int value)
{
int y;
int x;
cout<<"valie is :"<<value<<endl;
int c=0;
    for (y=0;y<sizeY;y++)
    {
        for(x=0;x<sizeX;x++)
        cout<<setw(6)<<*(b[y]+x)<<" ";
    cout<<endl;
    }
cout<<"\n\n";
    for (y=0;y<sizeY;y++)
    {
        for(x=0;x<sizeX;x++)
        {
            for (c=1;c<=9;c++)
                if (((*(b[y]+x))/(mod(10,c)))==value)
                {
 
                c++;
                }
        }
    }
 
    if (c==0)
    cout<<"Sorry , but value = "<<value<<" haven't result :-("<<endl;
cout<<"number of answers: "<<c<<endl;
int *arrayValue=new int[c];
c=0;
    for (y=0;y<sizeY;y++)
    {
        for(x=0;x<sizeX;x++)
        {
            for (c=1;c<=9;c++)
                if (((*(b[y]+x))/(mod(10,c)))==value)
                {
                cout<< *(b[y]+x)<<" \n";
                arrayValue[c]=*(b[y]+x);
                c++;
                }
        }
    }
 
ofstream file2;
file2.open("result.txt");
cout<<"Created file:\"result.txt\""<<endl;
    for (y=0;y<c;y++)
    {
    file2<<arrayValue[y]<<" ";
    }
 
}
 
 
int main()
{
srand(time(0));
int sizeX,sizeY,value;
cout<<"Enter size x:";
cin>>sizeX;
cout<<"Enter size Y:";
cin>>sizeY;
int* *b=new int*[sizeY];
 
cout<<"\nfunction setFile:";
setFile(sizeX,sizeY);
cout<<"\nfunction read";
readFile(b,sizeY, sizeX);
 
cout<<"\nenter find value:";
cin>>value;
cout<<"\nfunction find:\n";
find(b,sizeX,sizeY,value);
 
delete[]b;
return 0;
}
Вот ошибка одна осталась теперь Compiling...
Cpp3.cpp
C:\Users\Teacher\Desktop\Êóðñà÷\Cpp3.cpp(38) : error C2679: binary '<<' : no operator defined which takes a right-hand operand of type 'class __SMANIP_int' (or there is no acceptable conversion)
Error executing cl.exe.

Cpp3.exe - 1 error(s), 0 warning(s)
Yandex
Объявления
03.11.2013, 11:40     Нужно исправить ошибки
Ответ Создать тему
Опции темы

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