Форум программистов, компьютерный форум, киберфорум
Наши страницы
С++ для начинающих
Войти
Регистрация
Восстановить пароль
 
jerom1234
0 / 0 / 0
Регистрация: 18.10.2014
Сообщений: 71
1

Поменять консольный ввод-вывод на файловый ввод-вывод

06.06.2015, 17:51. Просмотров 471. Ответов 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
//      ОБРАТНАЯ ПОЛЬСКАЯ ЗАПИСЬ
#define _CRT_SECURE_NO_WARNINGS
#include <iostream>
#include <conio.h>
using namespace std;
 
 
struct STACK
{
    double value;
    STACK *NODE;
};
 
 
int main()
{
    setlocale(LC_ALL,"");
    STACK *PtTop = nullptr, *TempPt = nullptr;
    char ZAPIS [100];
    cout<<"Введите польскую запись через пробел: ";
    gets(ZAPIS);
    int count = 0;
    double x;
    int k = 0;
    char buffer [100];
    while( ZAPIS[count] != '\0' )
    {
        while( ZAPIS[count] != ' ' && ZAPIS[count] != '\0' )
        {
            buffer[k] = ZAPIS[count];
            count++;
            k++;
        }
        buffer[k] = '\0';
        x = atof(buffer);
        if(x == 0)
        {
            switch ( ZAPIS [ count-1 ] )
            {
            case '*': PtTop->NODE->value = (PtTop->NODE->value * PtTop->value);
                PtTop = PtTop->NODE;
                break;
            case '+': PtTop->NODE->value = (PtTop->NODE->value + PtTop->value);
                PtTop = PtTop->NODE;
                break;
            case '-': PtTop->NODE->value = (PtTop->NODE->value - PtTop->value);
                PtTop = PtTop->NODE;
                break;
            case '/': PtTop->NODE->value = (double)(PtTop->NODE->value / PtTop->value);
                PtTop = PtTop->NODE;
                break;
            }
        }
        else
        {
            TempPt = new STACK;
            TempPt->value = x;
            TempPt->NODE = PtTop;
            PtTop = TempPt;
        }
        k = 0;
        if(ZAPIS[count] != '\0')
        {
            count++;
        }
    }
    cout<<"\n\nРезультат = "<<PtTop->value<<endl;
    system("pause");
    return 0;
}
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
06.06.2015, 17:51
Ответы с готовыми решениями:

Заменить в программе, переводящую строку в двоичный код, консольный ввод/вывод на файловый ввод/вывод
Добрый день! Помогите, пожалуйста, с программой. Программа считывает строку...

Файловый ввод-вывод, ввод с клавиатуры и обработка массива структур
Добрый вечер)) У меня небольшой вопрос. Почему первые буквы (в названии книг)...

Реализовать вывод массива объектов типа Student на консоль (файловый ввод/вывод)
Как сделать чтобы список студентов выводился на экран в конце?...

Поиск в массиве структур по заданному полю и вывод в алфавитном порядке (файловый ввод/вывод)
Помогите с функцией void runFile() что бы с файла брал и выводил в алфавитном...

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

4
zss
Модератор
Эксперт С++
7241 / 6694 / 4236
Регистрация: 18.12.2011
Сообщений: 17,666
Завершенные тесты: 1
06.06.2015, 17:57 2
Цитата Сообщение от jerom1234 Посмотреть сообщение
cout<<"Введите польскую запись через пробел: ";
gets(ZAPIS);
меняеете на
C++
1
2
3
ifstream fin("input.txt");
fin.getline(ZAPIC,100);
fin.close();
Цитата Сообщение от jerom1234 Посмотреть сообщение
cout<<"\n\nРезультат = "<<PtTop->value<<endl;
на
C++
1
2
3
ofstream fout("result.txt");
fout<<"\n\nРезультат = "<<PtTop->value<<endl;
fout.close();
1
ArtFeather
13 / 13 / 13
Регистрация: 04.06.2015
Сообщений: 85
06.06.2015, 17:57 3
C++
1
2
3
4
5
6
7
8
9
#include <fstream>
// Чтение из файла
ifstream read("fileread.txt");
read.getline(ZAPIS,100);
read.close();
// Запись в файл
ofstream write("filewrite.txt");
write << "\n\nРезультат = "<<PtTop->value<<endl;
write.close();
1
jerom1234
0 / 0 / 0
Регистрация: 18.10.2014
Сообщений: 71
09.06.2015, 21:42  [ТС] 4
это чуть чуть не то мне надо
тут ввод вайлов с++
а препод сказал на с
(
0
lss
930 / 859 / 355
Регистрация: 10.10.2012
Сообщений: 2,705
09.06.2015, 21:46 5
Цитата Сообщение от jerom1234 Посмотреть сообщение
а препод сказал на с
http://www.cyberforum.ru/c-beginners/
0
09.06.2015, 21:46
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
09.06.2015, 21:46

Файловый ввод/вывод: в строке поменять местами слова, разделенные союзом "и"
Задача такая : для заданной строки S поменять местами слова, разделенные союзом...

Консольный ввод-вывод
При попытке сделать этО!получилось вот это) Может кто нибудь подскажет?ну или...

Низкоуровневый консольный ввод и вывод
Добрый вечер всем форумчанам (может, у кого еще день ;D) Помогите,...


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

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

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