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

Опять работа с файлами. С++ - C++

Восстановить пароль Регистрация
 
prosto-ruslan
0 / 0 / 0
Регистрация: 23.09.2012
Сообщений: 9
30.09.2012, 11:15     Опять работа с файлами. С++ #1
Доброго времени суток, уважаемые гуру программирования.
Ранее я создавал тему, в которой просил у вас помощи по написанию программы, которая записывает в файл определенную информацию из входного файла. Очень вам всем благодарен за помощь.
Теперь мне усложнили задачу, о способе решении которой я даже и не догадываюсь.
Суть в том что в входном файле есть два пункта. (1. и 2. ) После которых идут различные цифры.
Программа предлагает выбрать пункт 1 либо 2 , после которого в выходной файл записываются цифры соответствующие пункту 1 , либо два. Но самое сложное то , что должны записаться не только цифры, но и то к чему они относятся. Программа должна записать это сама . Я догадываюсь , что понять все что я написал выше трудно , потому что не обладаю способностью доходчиво объяснять Поэтому вложил в сообщение входной файл (in.txt), то что должно было бы получиться после работы программы - выходной файл ( out.txt ) а так же смешной код (перековерканый в пух и прах код , который мне прислал alsav22 в прошлой теме ) , я надеюсь что он подскажет что я имел в виду выше.
Буду рад любым подсказкам. Заранее огромное спасибо .

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
#include "stdafx.h"
#include <iostream>
#include <fstream>
#include <string>
#include <locale.h> 
 
using namespace std;
 
int main()
{
    setlocale(LC_ALL, "rus" );
    
   ifstream fin ("in.txt"); 
    if (!fin.is_open()) 
    {
        cout << "Ошибка при открытии файла для чтения\n";
        system("pause");
        return 0; 
    }
    
    ofstream fout("out.txt");
    if (!fout.is_open()) 
    {
        cout << "Ошибка при открытии файла для записи\n";
        system("pause");
        return 0; 
    }
    
 
   ifstream fin("in.txt");
   ofstream fout("out.txt");
 
   (цикл, который я не могу сформулировать ) 
   {
       int type;
       cout << " Введите номер пункта , который необходимо записать : \n" ;
       cout << "№"  
       cin >> type ; 
       if (type == 1) 
       {
           (запись в выходной файл ) << "Записывается информация о самолете"; 
           string a, b , c , d; // строки a, b, c, d  соответствуют 1, 2, 3, 4  строкам в входном файле под пунктом 1. 
           (запись в выходной файл ) << "Скорость :  " << a  ;// в итоге в выходном файле должно записаться "Скорость : 450 ", где 450 - это первая цифра в входном файле под пунктом 1. 
           (запись в выходной файл ) << "Дальность полета : " << b ;// в итоге в выходном файле должно записаться "Дальность полета : 3000 ", где 3000 - это вторая цифра в входном файле под пунктом 1. 
           (запись в выходной файл ) << "Высота : "  << c ; // в итоге в выходном файле должно записаться "Высота : 10000 ", где 10000 это третья цифра в входном файле под пунктом 1. 
           (запись в выходной файл ) << "Количество пассажиров : " << d ; // в итоге в выходном файле должно записаться "Количество пассажиров : 300 ", где 300 это четвертая цифра в входном файле под пунктом 1. 
           /*и еще, столкнулся с проблемой, не получается вывести записанный выходной файл в консоль. Он выводился то криво , то выводилось то что не нужно */
       }
       else if ( type == 2 ) 
       {
           (запись в выходной файл ) << "Записывается информация о Поезде";
           string a, d; // строки a, b соответствуют строкам 1 и 2  в входном файле под пунктом 2. 
           (запись в выходной файл ) << "Количество вагонов : " << a << endl; // в итоге в выходном файле должно записаться "Количество вагонов: 75  ", где 75 - это первая цифра в входном файле под пунктом 2. 
           (запись в выходной файл ) << "Средняя скорость : " << b << endl;  // в итоге в выходном файле должно записаться "Средняя скорость : 80 ", где 80 - это вторая цифра в входном файле под пунктом 2. 
           /*И опять ... столкнулся с проблемой, не получается вывести записанный выходной файл в консоль. Он выводился то криво , то выводилось то что не нужно */
       }
 
                
    fin.close();
    fout.close();
    
    system("pause");
    return 0;
}
Вложения
Тип файла: txt in.txt (39 байт, 11 просмотров)
Тип файла: txt out.txt (404 байт, 13 просмотров)
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
30.09.2012, 11:15     Опять работа с файлами. С++
Посмотрите здесь:

Работа с файлами C++
Работа с файлами. C++
C++ работа с файлами
C++ работа с файлами
C++ Работа с файлами
Работа с файлами C++
C++ Работа с файлами
C++ Найти слова, встречающиеся в каждом предложении текста. Работа с файлом опять)

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

Или воспользуйтесь поиском по форуму:
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
Ответ Создать тему
Опции темы

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