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

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

Войти
Регистрация
Восстановить пароль
 
Layzie
0 / 0 / 0
Регистрация: 28.12.2013
Сообщений: 89
#1

Одна программа записывает данные в файл, а другая их считывает и выводит на экран - C++

08.01.2014, 19:59. Просмотров 366. Ответов 8
Метки нет (Все метки)

Задача состоит в том чтоб одна программа записала данные в файл а другая их считала и вывела на экран как полагается, запись и считывание через бинарный режим должны осуществляться. Имеется класс object и у него два класса наследника triangle и uravn.
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
int main(int argc,char* argv[])
{FILE* F;
F=fopen(argv[1],"wb+");
char p;
cout<<"vvedite kol-vo elementov";
int N;
cin>>N;
object** A;
A= new object* [N];
fwrite(&N,sizeof(int),1,F);
for(int i=0;i<N;i++)
    {cout<<"vvedite tip objekta t-triangle, u-uravneniya \n";
    cin>>p;
    if(p=='t') *(A+i)=new triangle;
    if(p=='u') *(A+i)=new uravn;
    cout<<"vvedite objekt "<<i+1<<"\n";
    A[i]->input();
    if(p=='t') {fwrite(&p,sizeof(char),1,F); fwrite(A[i],sizeof(triangle),1,F);};
    if(p=='u') {fwrite(&p,sizeof(char),1,F); fwrite(A[i],sizeof(uravn),1,F);};
    };
fclose(F);
return 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
int main(int argc,char* argv[])
{FILE* F;
object** A;
if(argc==2)
    {
    F=fopen(argv[1],"rb");
    int N;
    char p;
    fread(&N,sizeof(int),1,F);
    cout<<N;
    A=new object*[N];
    for(int i=0;i<N;i++)
        {fread(&p,sizeof(char),1,F);
        if(p=='t') A[i]=new triangle;
        if(p=='u') A[i]=new uravn;
        if(p=='t') {fread(&A[i],sizeof(triangle),1,F); cout<<"t";};
        if(p=='u') {fread(&A[i],sizeof(uravn),1,F); cout<<"u";};
    };                              //vvod */
    for(int i=0;i<N;i++)
        {cout<<"objekt "<<i+1<<":\n";
    cout<<A[i]->output();
    }
return 0;
};
я так понимаю что неправильно считывается/записывается тип класса наследника, ибо до cout<<A[i]->output(); все идет нормально, потом программа закрывается.

Добавлено через 7 минут
файл указывается через параметр, вторая программа правильно считывает количество объектов, а после начинаются непонятки.
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
08.01.2014, 19:59
Здравствуйте! Я подобрал для вас темы с ответами на вопрос Одна программа записывает данные в файл, а другая их считывает и выводит на экран (C++):

Программа считывает текст с клавиатуры и выводит на экран... - C++
написать программу которая считывает текст с клавиатуры и выводит на экран слова текста начинающиеся и оканчивающиеся на гласные...

Программа, которая считывает текст из файла, и выводит на экран только цитаты - C++
Написать программу, которая считывает текст из файла и выводит на экран только цитаты, то есть предложения, заключенные в кавычки. не...

Программа не записывает данные в файл - C++
Программа не записывает данные в файл помогите исправить #include&lt;iostream&gt; #include &lt;stdio.h&gt; #include &lt;stdlib.h&gt; ...

Программа, которая считывает текст из файла и выводит на экран строки, содержащие двузначные числа - C++
В чтении/записи файлов я ничего не понимаю, поэтому обращаюсь сюда. разобрав задачу, я примерно понял алгоритм: 1. есть файл,...

Не работает код (программа считывает из файла строку, убирает лишние пробелы и записывает в другой файл строку, словами наоборот) - C++
#include &quot;stdafx.h&quot; #include &lt;iostream&gt; #include &lt;fstream&gt; #include &lt;string&gt; #include &lt;algorithm&gt; using namespace std; string...

Нужна программа, которая считывает текст из файла и выводит на экран только предложения, не содержащие запятых - C++
Помогите!!! нужна программа, которая считывает текст из файла и выводит на экран только предложения не содержащие запятых.

8
DU
1483 / 1129 / 45
Регистрация: 05.12.2011
Сообщений: 2,279
08.01.2014, 20:10 #2
чтение не в то место?
fread(&A[i],sizeof(triangle),1,F);

fread(A[i],sizeof(triangle),1,F);
0
Layzie
0 / 0 / 0
Регистрация: 28.12.2013
Сообщений: 89
08.01.2014, 20:10  [ТС] #3
подскажите как можно, и можно ли проверить, каким классом наследником помечен элемент общего массива?
0
Layzie
0 / 0 / 0
Регистрация: 28.12.2013
Сообщений: 89
08.01.2014, 20:13  [ТС] #4
Цитата Сообщение от DU Посмотреть сообщение
чтение не в то место?
fread(&A[i],sizeof(triangle),1,F);

fread(A[i],sizeof(triangle),1,F);
я конечно очень плохо понимаю в указателях, но пытался это место менять несколько раз, и ваш вариант тоже подвергался тестированию, результат не утешительный(
0
Миниатюры
Одна программа записывает данные в файл, а другая их считывает и выводит на экран  
DU
1483 / 1129 / 45
Регистрация: 05.12.2011
Сообщений: 2,279
08.01.2014, 20:17 #5
весь код выкладывайте. с классами triangle и с uravn
0
Layzie
0 / 0 / 0
Регистрация: 28.12.2013
Сообщений: 89
08.01.2014, 20:24  [ТС] #6
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
class pset 
{public:
float x,y,z;
void input()
{cout<<"write a: ";
cin>>x;
cout<<"write b: ";
cin>>y;
cout<<"write c: ";
cin>>z;
};
void output()
{cout<<"("<<x<<","<<y<<","<<z<<") \n";
};
};
class object
{public:
virtual void input()=0;
virtual void output()=0;
virtual float S()=0;
};
class uravn: public object
{public:
pset K[2];
float P;
void input()
{
for(int i=0;i<2;i++)
{cout<<"koefficienty "<<i+1<<" uravneniya \n";
K[i].input();
}
};
void output()
{for(int i=0;i<2;i++)
{cout<<"koefficienty "<<i+1<<" uravneniya \n";
K[i].output();
}
}
float S()
{if(K[1].x*K[2].y!=K[1].y*K[2].x) return ((K[2].z*K[1].y-K[1].z*K[2].y)/(K[1].x*K[2].y-K[2].x*K[1].y))+((K[1].x*K[2].z-K[1].z*K[2].x)/(K[1].y*K[2].x-K[1].x*K[2].y));   //x+y
else return 666;
}
};
class triangle: public object
{public:
pset K[4];
float P;
void input()
{for(int i=0;i<4;i++)
{cout<<"vvedite koordinaty "<<i+1<<" vershiny tetraedra \n";
K[i].input();
}
}
 
void output()
{for(int i=0;i<4;i++)
{cout<<"koordinaty "<<i+1<<" vershiny tetraedra \n";
K[i].output();
}
}
float S()
{
pset AB;
pset AC;
pset AD;
AB.x=K[2].x-K[1].x;
AB.y=K[2].y-K[1].y;
AB.z=K[2].z-K[1].z;  
AC.x=K[3].x-K[1].x;
AC.y=K[3].y-K[1].y;
AC.z=K[3].z-K[1].z;
AD.x=K[4].x-K[1].x;
AD.y=K[4].y-K[1].y;
AD.z=K[4].z-K[1].z; 
return (AC.x*(AD.y*AB.z-AD.z*AB.y)+AC.y*(AD.z*AB.x-AD.x*AB.z)+AC.z*(AD.x*AB.y-AD.y*AB.x))/6; //должен возвращать объем тетраедра
}
};

классы и методы для обеих программ одинаковые, один раз написал и во вторую скопипастил. программа была рабочая, до того как я её переделал под работу с файлами, а переделывая я корректировал только мейн, поэтому сомневаюсь что ошибка в классах.

Добавлено через 5 минут
полные программы получаются такие
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
117
118
119
120
#include "stdafx.h"
#include "math.h"
#include <iostream>
#include <stdio.h>
using namespace std;
 
class pset 
{public:
float x,y,z;
void input()
{cout<<"write a: ";
cin>>x;
cout<<"write b: ";
cin>>y;
cout<<"write c: ";
cin>>z;
};
void output()
{cout<<"("<<x<<","<<y<<","<<z<<") \n";
};
};
class object
{public:
virtual void input()=0;
virtual void output()=0;
virtual float S()=0;
};
class uravn: public object
{public:
pset K[2];
float P;
void input()
{
for(int i=0;i<2;i++)
{cout<<"koefficienty "<<i+1<<" uravneniya \n";
K[i].input();
}
};
void output()
{for(int i=0;i<2;i++)
{cout<<"koefficienty "<<i+1<<" uravneniya \n";
K[i].output();
}
}
float S()
{if(K[1].x*K[2].y!=K[1].y*K[2].x) return ((K[2].z*K[1].y-K[1].z*K[2].y)/(K[1].x*K[2].y-K[2].x*K[1].y))+((K[1].x*K[2].z-K[1].z*K[2].x)/(K[1].y*K[2].x-K[1].x*K[2].y));   //x+y
else return 666;
}
};
class triangle: public object
{public:
pset K[4];
float P;
void input()
{for(int i=0;i<4;i++)
{cout<<"vvedite koordinaty "<<i+1<<" vershiny tetraedra \n";
K[i].input();
}
}
 
void output()
{for(int i=0;i<4;i++)
{cout<<"koordinaty "<<i+1<<" vershiny tetraedra \n";
K[i].output();
}
}
float S()
{
pset AB;
pset AC;
pset AD;
AB.x=K[2].x-K[1].x;
AB.y=K[2].y-K[1].y;
AB.z=K[2].z-K[1].z;  
AC.x=K[3].x-K[1].x;
AC.y=K[3].y-K[1].y;
AC.z=K[3].z-K[1].z;
AD.x=K[4].x-K[1].x;
AD.y=K[4].y-K[1].y;
AD.z=K[4].z-K[1].z; 
return (AC.x*(AD.y*AB.z-AD.z*AB.y)+AC.y*(AD.z*AB.x-AD.x*AB.z)+AC.z*(AD.x*AB.y-AD.y*AB.x))/6; //должен возвращать объем тетраедра
}
};
int main(int argc,char* argv[])
{FILE* F;
object** A;
if(argc==2)
    {
    F=fopen(argv[1],"rb");
    int N;
    char p;
    fread(&N,sizeof(int),1,F);
    cout<<N;
    A=new object*[N];
    for(int i=0;i<N;i++)
        {fread(&p,sizeof(char),1,F);
        if(p=='t') {A[i]=new triangle; cout<<p;};
        if(p=='u') {A[i]=new uravn; cout<<p;};
        if(p=='t') {fread(A[i],sizeof(triangle),1,F);};
        if(p=='u') {fread(A[i],sizeof(uravn),1,F);};
        };
    for(int i=0;i<N;i++)
        {cout<<"objekt "<<i+1<<":\n";
    cout<<A[i]->S();
    }
//sortirovka 
/*for(int i=0; i<N; ++i)
    for(int j=i+1; j<N; ++j)
        if(A[j]->S()<A[i]->S()) swap(A[i],A[j]); 
cout<<"\n otsortirovannie massivi: \n";
*/
/*for(int i=0;i<N;i++)
{cout<<"\n objekt "<<i+1<<":\n";
A[i]->output();
if((A[i]->S())==666) cout<<"\n net kornei";
else cout<<"\n S= "<<A[i]->S();
}                                  //vivod*/
    }
return 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
// input.cpp: определяет точку входа для консольного приложения.
//
 
#include "stdafx.h"
#include "math.h"
#include <iostream>
using namespace std;
 
class pset 
{public:
float x,y,z;
void input()
{cout<<"write a: ";
cin>>x;
cout<<"write b: ";
cin>>y;
cout<<"write c: ";
cin>>z;
};
void output()
{cout<<"("<<x<<","<<y<<","<<z<<") \n";
};
};
class object
{public:
virtual void input()=0;
virtual void output()=0;
virtual float S()=0;
};
class uravn: public object
{public:
pset K[2];
float P;
void input()
{
for(int i=0;i<2;i++)
{cout<<"koefficienty "<<i+1<<" uravneniya \n";
K[i].input();
}
};
void output()
{for(int i=0;i<2;i++)
{cout<<"koefficienty "<<i+1<<" uravneniya \n";
K[i].output();
}
}
float S()
{if(K[1].x*K[2].y!=K[1].y*K[2].x) return ((K[2].z*K[1].y-K[1].z*K[2].y)/(K[1].x*K[2].y-K[2].x*K[1].y))+((K[1].x*K[2].z-K[1].z*K[2].x)/(K[1].y*K[2].x-K[1].x*K[2].y));   //x+y
else return 666;
}
};
class triangle: public object
{public:
pset K[4];
float P;
void input()
{for(int i=0;i<4;i++)
{cout<<"vvedite koordinaty "<<i+1<<" vershiny tetraedra \n";
K[i].input();
}
}
 
void output()
{for(int i=0;i<4;i++)
{cout<<"koordinaty "<<i+1<<" vershiny tetraedra \n";
K[i].output();
}
}
float S()
{
pset AB;
pset AC;
pset AD;
AB.x=K[2].x-K[1].x;
AB.y=K[2].y-K[1].y;
AB.z=K[2].z-K[1].z;  
AC.x=K[3].x-K[1].x;
AC.y=K[3].y-K[1].y;
AC.z=K[3].z-K[1].z;
AD.x=K[4].x-K[1].x;
AD.y=K[4].y-K[1].y;
AD.z=K[4].z-K[1].z; 
return (AC.x*(AD.y*AB.z-AD.z*AB.y)+AC.y*(AD.z*AB.x-AD.x*AB.z)+AC.z*(AD.x*AB.y-AD.y*AB.x))/6; //должен возвращать объем тетраедра
}
};
int main(int argc,char* argv[])
{FILE* F;
F=fopen(argv[1],"wb+");
char p;
cout<<"vvedite kol-vo elementov";
int N;
cin>>N;
object** A;
A= new object* [N];
fwrite(&N,sizeof(int),1,F);
for(int i=0;i<N;i++)
    {cout<<"vvedite tip objekta t-triangle, u-uravneniya \n";
    cin>>p;
    if(p=='t') *(A+i)=new triangle;
    if(p=='u') *(A+i)=new uravn;
    cout<<"vvedite objekt "<<i+1<<"\n";
    A[i]->input();
    if(p=='t') {fwrite(&p,sizeof(char),1,F); fwrite(A[i],sizeof(triangle),1,F);};
    if(p=='u') {fwrite(&p,sizeof(char),1,F); fwrite(A[i],sizeof(uravn),1,F);};
    };
fclose(F);
return 0;
}
а это та что работает вроде бы нормально и заполняет файл для другой
0
DU
1483 / 1129 / 45
Регистрация: 05.12.2011
Сообщений: 2,279
08.01.2014, 20:42 #7
вот на коленке слабал объединение прог. весь ввод заменил на эмуляцию.
вроде работает. может у вас метод S падает при делении на ноль. так же есть выход
за пределы массивов. если у вас K размера 2, то K[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
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
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
#include "math.h"
#include <iostream>
 
using namespace std;
 
class pset 
{
public:
  float x,y,z;
 
  void input()
  {
    /*
    cout<<"write a: ";
    cin>>x;
    cout<<"write b: ";
    cin>>y;
    cout<<"write c: ";
    cin>>z;
    */
    x = 1;
    y = 2;
    z = 3;
  }
 
  void output()
  {
    cout<<"("<<x<<","<<y<<","<<z<<") \n";
  }
};
 
class object
{
public:
  virtual void input() = 0;
  virtual void output() = 0;
  virtual float S() = 0;
};
 
class uravn : public object
{
public:
  pset K[2];
  float P;
  virtual void input()
  {
    for (int i=0;i<2;i++)
    {
      cout<<"koefficienty "<<i+1<<" uravneniya \n";
      K[i].input();
    }
  }
 
  virtual void output()
  {
    cout << "--------------" << endl;
    for (int i=0;i<2;i++)
    {
      cout<<"koefficienty "<<i+1<<" uravneniya \n";
      K[i].output();
    }
  }
 
  float S()
  {
    if(K[1].x*K[2].y!=K[1].y*K[2].x) return ((K[2].z*K[1].y-K[1].z*K[2].y)/(K[1].x*K[2].y-K[2].x*K[1].y))+((K[1].x*K[2].z-K[1].z*K[2].x)/(K[1].y*K[2].x-K[1].x*K[2].y));   //x+y
    else return 666;
  }
};
 
class triangle: public object
{
public:
  pset K[4];
  float P;
  
  virtual void input()
  {
    for (int i=0;i<4;i++)
    {
      cout<<"vvedite koordinaty "<<i+1<<" vershiny tetraedra \n";
      K[i].input();
    }
  }
 
  virtual void output()
  {
    cout << "--------------" << endl;
    for (int i=0;i<4;i++)
    {
      cout<<"koordinaty "<<i+1<<" vershiny tetraedra \n";
      K[i].output();
    }
  }
 
  virtual float S()
  {
    pset AB;
    pset AC;
    pset AD;
    AB.x=K[2].x-K[1].x;
    AB.y=K[2].y-K[1].y;
    AB.z=K[2].z-K[1].z;  
    AC.x=K[3].x-K[1].x;
    AC.y=K[3].y-K[1].y;
    AC.z=K[3].z-K[1].z;
    AD.x=K[4].x-K[1].x;
    AD.y=K[4].y-K[1].y;
    AD.z=K[4].z-K[1].z; 
    return (AC.x*(AD.y*AB.z-AD.z*AB.y)+AC.y*(AD.z*AB.x-AD.x*AB.z)+AC.z*(AD.x*AB.y-AD.y*AB.x))/6; //должен возвращать объем тетраедра
  }
};
 
int main(int argc,char* argv[])
{
  const char* fileName = "d:\\tmp\\data.dat";
 
  {
    FILE* F;
    //F=fopen(argv[1],"wb+");
    F=fopen(fileName,"wb+");
    char p;
    cout<<"vvedite kol-vo elementov";
    //int N;
    //cin>>N;
    const int N = 4;
 
    object** A = new object* [N];
 
    fwrite(&N,sizeof(int),1,F);
 
    for (int i = 0; i < N; i++)
    {
      cout<<"vvedite tip objekta t-triangle, u-uravneniya \n";
      //cin>>p;
      p = ((i % 2) == 1) ? 't' : 'u';
 
      if(p=='t')
        *(A+i)=new triangle;
 
      if(p=='u')
        *(A+i)=new uravn;
 
      cout<<"vvedite objekt "<<i+1<<"\n";
      A[i]->input();
      if(p=='t')
      {
        fwrite(&p,sizeof(char),1,F); fwrite(A[i],sizeof(triangle),1,F);
      }
 
      if(p=='u')
      {
        fwrite(&p,sizeof(char),1,F); fwrite(A[i],sizeof(uravn),1,F);
      }
    }
 
    fclose(F);
  }
 
  {
    FILE* F;
    object** A;
    //if (argc==2)
    {
      //F=fopen(argv[1],"rb");
      F = fopen(fileName,"rb");
      int N;
      char p;
      fread(&N,sizeof(int),1,F);
      cout<<N;
      A=new object*[N];
      for (int i = 0; i < N; i++)
      {
        fread(&p,sizeof(char),1,F);
        if(p=='t') {A[i]=new triangle; cout<<p;};
        if(p=='u') {A[i]=new uravn; cout<<p;};
        if(p=='t') {fread(A[i],sizeof(triangle),1,F);};
        if(p=='u') {fread(A[i],sizeof(uravn),1,F);};
      }
 
      for(int i=0;i<N;i++)
      {
        cout<<"objekt "<<i+1<<":\n";
        //cout<<A[i]->S();
        A[i]->output();
      }
    }
  }
 
  return 0;
}
0
Layzie
0 / 0 / 0
Регистрация: 28.12.2013
Сообщений: 89
08.01.2014, 21:00  [ТС] #8
по поводу К[2] заметил спасибо,но проблема как я уже говорил в строке
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
int main(int argc,char* argv[])
{FILE* F;
object** A;
if(argc==2)
    {
    F=fopen(argv[1],"rb");
    int N;
    char p;
    fread(&N,sizeof(int),1,F);
    cout<<N;
    A=new object*[N];
    for(int i=0;i<N;i++)
        {fread(&p,sizeof(char),1,F);
        if(p=='t') {*(A+i)=new triangle; cout<<p;};
        if(p=='u') {*(A+i)=new uravn; cout<<p;};
        if(p=='t') {fread(A[i],sizeof(triangle),1,F);};
        if(p=='u') {fread(A[i],sizeof(uravn),1,F);};
        };
    for(int i=0;i<N;i++)
        {cout<<"objekt "<<i+1<<":\n";
        A[i]->output(); // проблема тут, если сделать эту строку комментарием, программа не умирает.
        }
,скопировал ваш код, критует
0
Миниатюры
Одна программа записывает данные в файл, а другая их считывает и выводит на экран  
DU
1483 / 1129 / 45
Регистрация: 05.12.2011
Сообщений: 2,279
08.01.2014, 21:08 #9
вообще осваивайте отладку. сильно пригодится.
по ассерту видно, что файл в каком-то месте не открылся.
я туда вбил свой путь: const char* fileName = "d:\\tmp\\data.dat";
а может вы что-то не то скопировали или скопировали и подредактировали что-то.
нажмите на окне повтор и студия покажет вам место ассерта. далее, ко стеку вызовов можно
поднятся до точки в вашем коде и посмотреть чему там равны переменные и т.п. в общем,
обычная отладка с которой подобные проблемы решаются без всяких проблем.
1
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
08.01.2014, 21:08
Привет! Вот еще темы с ответами:

Программа, которая считывает текст из файла и выводит на экран все его предложения в обратном порядке - C++
Требуется написать программу, которая считывает текст из файла и выводит на экран все его предложения в обратном порядке. Ввод-вывод...

Списки и файлы. Программа, которая считывает английский текст и выводит на экран слова, начинающиеся с гласных букв - C++
Ребята привет, мне посоветовали этот форум, как помощь для начинающих программистов. Буду очень признательна, если поможете написать...

Файлы. Программа, которая считывает текст из файла и выводит на экран все его предложения в обратном порядке - C++
Помогите пожалуйста! Такая проблема, есть программа: #include &quot;stdafx.h&quot; #include &lt;stdio.h&gt; #include &lt;string.h&gt; #include...

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


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

Или воспользуйтесь поиском по форуму:
9
Yandex
Объявления
08.01.2014, 21:08
Ответ Создать тему
Опции темы

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