0 / 0 / 1
Регистрация: 07.10.2018
Сообщений: 37
1

Ввод и вывод( текстовый файл)

10.03.2019, 12:33. Показов 245. Ответов 0
Метки нет (Все метки)

Доброго времени суток. Задача стоит предо мной такая: ввести данные с клавиатуры в файл, затем считать их из файла и распределить по двум другим файлам, в зависимости от условия( в один файл студентов, которые сдали сессию без 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
#include<iostream> 
#include<cmath> 
#include<vector> 
#include<string> 
#include<fstream> 
using namespace std; 
 
ofstream inf("student.txt"); 
ofstream out("GoodStudents.txt"); 
ofstream put("NotGoodStudents.txt"); 
 
struct student { 
int NumbGroup; 
string FIO; 
int SES[3]; 
}; 
 
int main() { 
 
int n, i = 0; 
cout << "enter size group" << endl; 
cin >> n; 
vector<student> group(n); 
 
if (!inf) 
{ cout << "Cannot open the file" <<endl; } 
 
else { 
for (int i = 0; i < n; i++) 
{ 
    cout << "Group: "; 
    cin >> group[i].NumbGroup; 
    inf << group[i].NumbGroup << " "; 
    cout << "Name: "; 
    cin >> group[i].FIO; 
    inf << group[i].FIO << " "; 
    cout << "Marks:" << endl; 
 
    for (int j = 0; j < 3; j++) 
{ 
        cin >> group[i].SES[j]; 
        inf << group[i].SES[j] << " "; } 
} 
} 
 
inf.close(); 
ifstream in("student.txt"); 
 
if (!in) 
{ cout << "error, file not opened"; } 
 
else { 
    while (in.peek() != EOF) { 
    in >> group[i].NumbGroup; 
    in >> group[i].FIO;
 
    for (int j = 0; j < 3; j++) 
{ 
        in >> group[i].SES[j]; } 
} 
 
in.close(); 
i = 0; 
 
if (!out && !put) 
{ cout << "error, file not opened"; } 
 
else { 
    while (in.peek() != EOF) { 
        bool Bal = true; 
        for (int j = 0; j < 3; j++) 
{ 
            if (group[i].SES[j] <= 2)  
               { Bal = false; } 
} 
        if (Bal) { 
            out << group[i].NumbGroup; 
            out << group[i].FIO; 
            for (int j = 0; j < 3; j++) 
                { out << group[i].SES[j]; } 
} 
 
else { 
    put << group[i].NumbGroup; 
    put << group[i].FIO; 
    for (int j = 0; j < 3; j++) 
        { put << group[i].SES[j]; } 
} 
++i;
} 
} 
} 
in.close(); 
put.close(); 
out.close(); 
}
__________________
Помощь в написании контрольных, курсовых и дипломных работ, диссертаций здесь
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
10.03.2019, 12:33
Ответы с готовыми решениями:

Ввод/вывод структуры в текстовый и бинарный файл
есть код #include &quot;stdafx.h&quot; #include &lt;iostream&gt; #include &lt;stdio.h&gt; #include &lt;math.h&gt; #include...

Работа с файлами: вывод-ввод результатов программы в текстовый файл
#include&lt;iostream&gt; #include&lt;cstdlib&gt; #include&lt;ctime&gt; using namespace std; int main() {...

Как организовать Буферизированный ввод вывод стурктуры в текстовый файл?
Подскажите, как организовать Буферизированный ввод вывод стурктуры в текстовый файл? Буду...

Ввод структуры в текстовый файл столбиком и вывод данных из файла в структуру
Имеется база данных в виде структуры, которая будет постепенно дописываться приблизительно до 1000...

0
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
10.03.2019, 12:33
Помогаю со студенческими работами здесь

Считать данные из текстового файла по условию и записать их в другой текстовый файл (файловый ввод/вывод)
Здравствуйте! Очень прошу о помощи! Суть задания - дан текстовый файл, нужно считать его и записать...

Открыть текстовый файл, дозаписать в него данные, вывести содержимое файла (файловый ввод/вывод)
Открыть текстовый файл 1.txt, имя файла указывается в командной строке. Дозаписать в него данные....

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

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


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

Или воспользуйтесь поиском по форуму:
1
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2022, CyberForum.ru