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

Работа с файлами: ввод/вывод структур ("Город") - C++

Войти
Регистрация
Восстановить пароль
Другие темы раздела
C++ Вычислить x ( x - n )( x - 2 n )…( x - n^2 ) http://www.cyberforum.ru/cpp-beginners/thread1160370.html
Помогите составить алгоритм на c++ для решения задачи, а то дуб совсем. Дано натуральное число n и действительное число x. Вычислить: x ( x - n )( x - 2 n )( x - 3 n )…( x - n^2 ).
C++ Перегрузка оператора -> Здравствуйте, мне нужно реализовать перегрузку operator-> .Как реализован оператор ->? Что он делает понятно, а как? http://www.cyberforum.ru/cpp-beginners/thread1160367.html
Почти полное бинарное дерево C++
Здравствуйте! Подскажите пожалуйста, как сделать так, чтобы функция проходилась к примеру по всей левой части дерева. Я сделал функцию проверки дерева на то, является ли оно почти полным, но при входе в левое поддерево, функция проверяет только левых потомком. То есть к примеру, если у правого узла есть потомки, то функция их не проверяет! bool left(TNode *&root, int &cnt2){ cnt2++; if...
C++ В диагоналях, параллельных главной, найти максимальные элементы
#include<iostream.h> #include<conio.h> #include<iomanip.h> int main() { int sum,sump,m,i,j,n,k,pr,y; bool x; cout<<"Danna kvadratichnaya matrica. Razmernost' = 2"<<endl; n=2; int**a=new int*;
C++ Бинарное дерево, исправить ошибки в коде http://www.cyberforum.ru/cpp-beginners/thread1160345.html
в общем, есть такой вот код. компилится, ошибок нет. а запускаться - не запускается( подскажите, в чём проблема? #include "stdafx.h" #include "iostream" #include <locale.h> #include <fstream> using namespace std; struct Node //структура дерева {
C++ Отладчик VS показывает разные значения При отладке постоянно встречаюсь с такой фигнёй: до входа в какую-либо процедуру отладчик показывает одно значение переменной, а после - другое. Но тогда они отличались на несколько тысячных. Сейчас он вообще офигел! Мало того, что умножает числа на ~1000, дык ещё и равные числа делает неравными!!:wall: Либо я туплю, либо отладчик в говно погрешный.:help: подробнее

Показать сообщение отдельно
andreyananas
21 / 21 / 8
Регистрация: 15.10.2013
Сообщений: 862
Завершенные тесты: 2
29.04.2014, 14:57  [ТС]     Работа с файлами: ввод/вывод структур ("Город")
Цитата Сообщение от nmcf Посмотреть сообщение
И файл какой должен быть, текстовый или бинарный?
текстовый

Добавлено через 5 часов 33 минуты
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
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
#include <iostream>
#include <fstream>
#include <windows.h>
#include <stdio.h> // для указателя на файл
#include <conio.h>
 
 
using namespace std;
 
struct record
{
    char  name[25];
    float square;
    float nas;
};
 
 
void P_Menu(); // выводит меню
 
void Load(istream &, record &);
 
int main()
{
    SetConsoleOutputCP(1251);
    SetConsoleCP(1251);
 
    int ver;
    char filename[25], filename2[25];
    record Rec, Buf;
 
 
    ifstream fin; // создание объекта для ввода ИЗ файла через поток
    ofstream fout; //      -//-       для вывода В файл
 
    bool W = false, R = false;
 
    do
    {
        system("cls");
        if(R && W)
            cout << " [ файл " << filename << " открыт для загрузки и ввода данных ]" << endl;
        P_Menu();
        cin >> ver;
        switch(ver)
        {
        case 1: // Создать новый файл
            cout << "\n Введите имя файла: ";
            cin >> filename;
            fout.open(filename, ios::app); // создание файла
            fout.close();
            W = false;
            break;
        case 2: // Открыть файл
            cout << "\n Введите имя файла: ";
            cin >> filename;
            fin.open(filename,ios::in); // открываем файл за именем в режиме чтения
            if(!fin.is_open()) // is_open проверяет есть ли файл
            {
                cout << " Такого файла не существует! \n нажмите любую клавишу для возвращения в главное меню...";
                getch();
                R = false;
                W = false;
                break;
            }
            fout.open(filename,ios::app);
            W = true;
            R = true;
            break;
        case 3: // Загрузить данные с файла
            if(R)
            {
               Load(fin, Buf);
               break;
            }
            else
            {
                cout << " Вы не открыли файл! \n нажмите любую клавишу для возвращения в главное меню...";
                getch();
                break;
            }
        case 4: // Ввести данные в открытый файл
            if(W)
            {
                cout << " Имя города: ";
                cin >> Rec.name;
                cout << " Площадь города: ";
                cin >> Rec.square;
                cout << " Кол-во населения: ";
                cin >> Rec.nas;
                fout << Rec.name << " " << Rec.square << " " << Rec.nas << endl;
            }
            else
            {
                cout << " Вы не открыли файл! \n нажмите любую клавишу для возвращения в главное меню...";
                getch();
            }
            break;
        case 5: // Удаление данных с файла
            cout << " Введите имя файла, данные которого хотите удалить: ";
            cin >> filename;
            fout.open(filename, ios::trunc);
            fout.close();
            W = false;
            break;
        case 6: // Удаление файла
            cout << " Введите имя файла, какой хотите удалить: ";
            cin >> filename2;
            remove(filename2);
            break;
        case 10: // Вывести на экран данные файла
            if(R)
            {
                cout << " город: " << Buf.name << " Площадь: " << Buf.square << " Население: " << Buf.nas << endl;
                cout << " нажмите любую клавишу для возвращения в главное меню...";
                getch();
            }
            else
            {
                cout << " Вы не загрузили данные с файла...";
                getch();
            }
            break;
        }
 
    }while(ver != 0);
 
    return 0;
}
 
void P_Menu()
{
    cout << "\n\t~~~~ГЛАВНОЕ МЕНЮ~~~~\n "<< endl;
    cout << " 1 -- Создать новый файл \n 2 -- Открыть файл \n 3 -- Загрузить данные с файла \n 4 -- Ввести данные в открытый файл " << endl;
    cout << " 5 -- Удаление данных с файла \n 6 -- Удаление файла \n 7 -- Редактировать данные в файле " << endl;
    cout <<" 8 -- Сортировка данных \n 9 -- Записать данные в сортированный файл \n 10 -- Вывести на экран данные файла"<<endl;
    cout << " 0 -- Выход с программы \n\n введите номер действия: ";
}
 
void Load (istream &is, record &d) // istream позволяет работать с cin и fin
{
    while(!is.eof())
    {
       is >> d.name >> d.square >> d.nas;
    }
}
Вот немного изменил

Добавлено через 1 минуту
Проблема в загрузки с файла больше одной структуры((((

Добавлено через 2 часа 6 минут
объясните может структуру нужно в бинарный файл кидать?

Добавлено через 9 часов 43 минуты
help me=)
 
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru