23 / 23 / 14
Регистрация: 01.05.2015
Сообщений: 180
1

Запись результата выбора в два файла

20.05.2015, 20:54. Показов 472. Ответов 4
Метки нет (Все метки)

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

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
#include <iostream>
#include <fstream>
#include <cstring>
#include <locale>
#include <cctype>
#include <cmath>
#include <cstdlib>
#include <ncurses.h>
 
using namespace std;
//using std::cout;
//using std::cin;
//using std::endl;
 
struct Stack
{
    int key;
    Stack* next;
};
 
void Print(Stack *b)
{
    Stack *print = b;
    while (print)
    {
        cout << print->key << " -> ";
        print = print->next;
    }
}
 
void Push(Stack **next, int d)
{
    Stack *pv = new Stack; //объявляем новую динамическую переменную 
    pv->key = d;         
    pv->next = *next;     
    *next = pv;          
}
 
int Up(Stack **next)
{
    int temp = (*next)->key;    
    Stack *pv = (*next);         
                                
    (*next) = (*next)->next;    
    delete pv;                  //освобождаем память
    return temp;                //возвращаем значение, которое было в вершине
}
 
int main()
{
    ifstream fin;
    fin.open("example");
    if(!fin.is_open())
    {
        cout << "Fail! File not found.";
        return -1;
    }
    ofstream fout;    
    int n = 0;
    int temp;
    Stack *begin;
    while (!fin.eof() && fin >> temp)
    {
        Push(&begin, temp);
        n++;
    }
    fout.open("text",ios::app);
    for (int i (0); i < n; i++)
    {
        int x = Up(&begin);
        if (x%2 != 0)
        {
            fout << x << ", ";
        }        
    }
//system("clear");
return 0;
}
__________________
Помощь в написании контрольных, курсовых и дипломных работ здесь
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
20.05.2015, 20:54
Ответы с готовыми решениями:

Вывод результата выполнения команды в два файла
Всем привет, подскажите пожалуйста как результат направить в 2 файла В первый запись шла &gt;...

Чтение из файла и запись результата в файл
Доброго времени суток. Помогите пожалуйста реализовать чтение данных из файла и результат подсчета...

Диалоги выбора цвета и шрифта - получение результата выбора
Имеем функцию Function FUN_OPEN_FONT() As String ' диалог выбора ЦВЕТА '...

Чтение файла, замена слов и запись результата в новый файл
Помогите написать конвертер текста Например, у меня есть файл с определенным текстом. Мне нужно...

4
Модератор
Эксперт С++
11297 / 9283 / 5569
Регистрация: 18.12.2011
Сообщений: 24,773
20.05.2015, 20:59 2
Точно также
C++
1
 fout2.open("text2.txt",ios::app);
0
23 / 23 / 14
Регистрация: 01.05.2015
Сообщений: 180
20.05.2015, 21:11  [ТС] 3
Цитата Сообщение от zss Посмотреть сообщение
Точно также
Пробовал, программа компилируется, но в файлы ничего не записывается. Программа возвращает -1.
0
Модератор
Эксперт С++
11297 / 9283 / 5569
Регистрация: 18.12.2011
Сообщений: 24,773
20.05.2015, 21:23 4
Цитата Сообщение от ampermetr Посмотреть сообщение
но в файлы ничего не записывается
Где код?
0
23 / 23 / 14
Регистрация: 01.05.2015
Сообщений: 180
20.05.2015, 21:31  [ТС] 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
int main()
{
    ifstream fin;
    fin.open("example");
    if(!fin.is_open())
    {
        cout << "Fail! File not found.";
        return -1;
    }
    ofstream fout;
    ofstream fout2;
    int n = 0;
    int temp;
    Stack *begin;
    while (!fin.eof() && fin >> temp)
    {
        Push(&begin, temp);
        n++;
    }
    fout.open("text",ios::app);
    for (int i (0); i < n; i++)
    {
        int x = Up(&begin);
        if (x%2 != 0)
        {
            fout << x << ", ";
        }
    }
    fout2.open("text2",ios::app);
    for (int i (0); i < n; i++)
    {
        int z = Up(&begin);
        if (z%2 == 0)
        {
            fout << z << ", ";
        }
    }
//system("clear");
return 0;
}
Нашел ошибку. Надо было fout2 << z << ", ";
0
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
20.05.2015, 21:31

Чтение массива из файла и запись в другой файл обработанного результата
задание: в *.txt файле дан одномерный массив чисел. Нужно прочитать данный массив, элементы кратные...

Попарное слияние строк из одного текстового файла и запись результата в другой текстовый файл
есть txt файл состоящий из разного колличества строк, конец строк является `\n` необходимо...

Перекодировка содержимого текстового файла в Win-1251 и запись результата в новый файл с именем компьютера
Добрый день, подскажите пожалуйста... стоит задача написать bat, который будет собирать информацию...

Запись разной информации в два файла
Здравствуйте! У меня вопрос как сделать чтобы при вводе своего имени, имя записывалось в input.txt,...

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

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


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

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

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