Форум программистов, компьютерный форум, киберфорум
С++ для начинающих
Войти
Регистрация
Восстановить пароль
Другие темы раздела
C++ Принадлежность множеству https://www.cyberforum.ru/ cpp-beginners/ thread630915.html
На дельфи есть прекрасный оператор IN, который проверяет принадлежность множуству (я это так называю) То есть if Key IN then ... А как такое реализовать на С++?
C++ Задача на рекурсию
Задание : Напишите функцию возведения в степень, которая работала бы как для положительных, так и для отрицательных значений n: a^(-n)=1/a^n. Что-то написал, только для отрицательных значений...
C++ Создание проекта Hello World
Самое дно программирования на Сишке и уже какая-то проблема. Облазил много страниц, но именно своей проблемы не нашел. Делаю все по книге Либерти Джонса "Освой самостоятельно за 21 день". Создаю...
C++ Дозапись в бинарный файл Всем привет! Необходимо в процессе работы программы производить дозапись в бинарный файл. Как я понимаю необходимо спозиционировать put - указатель в конец файла и произвести дозапись. Только не... https://www.cyberforum.ru/ cpp-beginners/ thread630882.html
C++ Как правильно применять оператор switch https://www.cyberforum.ru/ cpp-beginners/ thread630878.html
Подскажите пожалуйста, в чём здесь ошибка. Язык С++. Среда C++ Builder 6. void __fastcall TForm1::Button1Click(TObject *Sender) { int a,a1,b,e1; a=Edit1->Text.ToInt(); ...
Дерево отрезков C++
Добрый день, помогите пож-та решить задачи на с++. Нашел решение (расписаны все алгоритмы, процедуры подсчета и т. д.), но сложность состоит в том, что я не понимаю строищихся структур и вообще...
C++ Длинное сложение
Добрый день, помогите пож-та решить задачи на с++. Нашел решение (расписаны все алгоритмы, процедуры подсчета и т. д.), но сложность состоит в том, что я не понимаю строищихся структур и вообще...
C++ Алгоритм Дейкстры Добрый день, помогите пож-та решить задачи на с++. Нашел решение (расписаны все алгоритмы, процедуры подсчета и т. д.), но сложность состоит в том, что я не понимаю строищихся структур и вообще... https://www.cyberforum.ru/ cpp-beginners/ thread630873.html
C++ Dev-C++ 4.9.9.2 не показывает номера строк https://www.cyberforum.ru/ cpp-beginners/ thread630866.html
Чё делать? +++++++++++++++++++++++++++++++++++++++ Я в неё интегрировал g++ 4.6.1 по-моему, вот инсталлятор mingw-get-inst-20111118.exe (пользовался им и раньше, всё было нормально) ...
C++ Делаю Memory Manager Array с простым (int) exception последний элемент чудит //array_hpp #ifndef Array_HPP #define Array_HPP #include "Point.hpp" #include <iostream> class Array { https://www.cyberforum.ru/ cpp-beginners/ thread630864.html
Заблокирован
Автор FAQ
31.07.2012, 11:55 0

Считывание из файла

31.07.2012, 11:55. Просмотров 2470. Ответов 20
Метки (Все метки)

Ответ

Вот вариант с картой
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 <map>
#include <vector>
#include <fstream>
#include <iomanip>
#include <iostream>
using namespace std;
 
//1946 12 30 0 -519 0 -490 0 9999 9 0 2 0
struct FILE_DATA
{
    int year;
    int month;
    int day;
    int param4;
    int param5;
    int param6;
    int param7;
    int param8;
    int param9;
    int param10;
    int param11;
    int param12;
    int t;
};
 
int main()
{
    int n;
    FILE_DATA pDATA = {0};//Òåïåðü íàì íóæíà âñåãî 1-íà ñòðóêòóðà
    //Çàìåíèì íàø óêàùàòåëü íà ìàññèâ íà êàðòó (ìàïó)
    map<int, FILE_DATA> mymap;
    map<int, FILE_DATA>::iterator it;//èòåðàòîð (òèïà ñ÷¸ò÷èêà)
    ifstream file("input.txt");//Èíèöèàëèçèðóåì ïîòîê ÷òåíèÿ
    if(!file.is_open())
        cout<<"Error open input.txt\n";
    else
    {
        //Âûäåëÿåì ïàìÿòü ïîä ïåðâóþ ñòðóêòóðó ìàññèâà
        for(n = 0;!file.eof(); )
        {
            //Â ïëþñàõ íàêèíóâ if òîæå ìîæíî ïðîâåðèòü 
            //êîððåêòíîñòü ÷òåíèÿ ïàðàìåòðîâ
            if
            (file>>pDATA.year
                >>pDATA.month
                >>pDATA.day
                >>pDATA.param4
                >>pDATA.param5
                >>pDATA.param6
                >>pDATA.param7
                >>pDATA.param8
                >>pDATA.param9
                >>pDATA.param10
                >>pDATA.param11
                >>pDATA.param12
                >>pDATA.t
            )
            {
                //âîò òàê äîáàâëåì â êàðòó ýëåìåíò
                //è íå äóìàåì î äèíàìè÷åñêîì âûäåëåíèè ïàìÿòè
                mymap.insert(make_pair(n,pDATA));
                n = n + 1;//óâåëè÷èâàåì ñ÷¸ò÷èê ñòðóêòóð
            }
        }
        file.close();
        if(n == 0)
            cout<<"File input.txt not contain correct data"<<endl;
        else
        {
            cout<<"Totlal count of read structures "<<n<<endl;
            //çäåñü ó íàñ ìàññèâ ñòðóêòóð èç n ýëåìåíòîâ
            //äàëåå äåëàì ñ íèì ÷òî äóøå óãîäíî
            //Ïîêàçûâàþ êàê ÷èòàòü êàðòó
            for(it = mymap.begin(); it != mymap.end(); it++)
            {
                pDATA = (*it).second;
                cout<<setw(4)<<pDATA.year<<" "
                    <<setw(2)<<pDATA.month<<" "
                    <<setw(2)<<pDATA.day<<" "
                    <<pDATA.param4<<" "
                    <<pDATA.param5<<" "
                    <<pDATA.param6<<" "
                    <<pDATA.param7<<" "
                    <<pDATA.param8<<" "
                    <<pDATA.param9<<" "
                    <<pDATA.param10<<" "
                    <<pDATA.param11<<" "
                    <<pDATA.param12<<" "
                    <<pDATA.t<<endl;
            }
        }
    }
    cout<<"Enter any key for exit"<<endl;
    getchar();
    return 0;
}


Вернуться к обсуждению:
Считывание из файла
0
Миниатюры
Считывание из файла  
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
31.07.2012, 11:55
Готовые ответы и решения:

Заменить считывание с клавиатуры на считывание из файла
Помогите пожалуйста, ни разу не работал со считыванием из файла поэтому не понимаю как и что...

Считывание файла в массив и запись нового файла
Консоль VS C++. Текстовый файл открывается как бинарный, и считывается по 100 байт в массив - и...

Считывание файла
ВОбщем при считывании файла стандартными способами FILE *file = fopen(filename, &quot;r&quot;); ...

Считывание из файла
Дан файл с данными типа: Петров Роман 1989 04 15 5 4 3 5 естесственно, что данных больше.....

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