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

Создайте текстовый файл, содержащий сведения о клиентах фирмы: - C++

Войти
Регистрация
Восстановить пароль
Другие темы раздела
C++ Помогите пожалуйста разобраться c++ http://www.cyberforum.ru/cpp-beginners/thread357781.html
Создайте текстовый файл, содержащий сведения о клиентах фирмы: наименование организации, дата основания, количество договоров на приобретение товаров, общая стоимость договоров. Напишите...
C++ Выход за приделы массива #include <cstdlib> #include <iostream> #include <fstream> using namespace std; int main(int argc, char *argv) { int a; int b; http://www.cyberforum.ru/cpp-beginners/thread357773.html
C++ Про рандом
Я уже понимаю, что это наверное 100500 тема, но уж сорре, раздел говорит сам за себя. По сути хотелось бы узнать разнцу между rand(),random() и randomize(). Ибо надо каждый раз иметь число в...
Создайте текстовый файл, содержащий сведения о клиентах фирмы C++
Создайте текстовый файл, содержащий сведения о клиентах фирмы: наименование организации, дата основания, количество договоров на приобретение товаров, общая стоимость договоров. Напишите...
C++ Список. Функция. http://www.cyberforum.ru/cpp-beginners/thread357748.html
void add(Node **pend,char x) { Node *pv = new Node; pv->d =x; pv->next = 0; pv->prev = *pend; (*pend)->next = pv; *pend = pv; } Можете объяснить эту функцию, как она работает? И...
C++ Определить, лежит ли заданная точка на одной из сторон треугольника, заданного координатами своих вершин 1. Определить, лежит ли заданная точка на одной из сторон треугольника, заданного координатами своих вершин. 2. Дана последовательность целых чисел. Определить, со скольких чётных чисел она... подробнее

Показать сообщение отдельно
Anton1994
0 / 0 / 0
Регистрация: 28.09.2011
Сообщений: 6
29.09.2011, 00:29  [ТС]
вроде разобрался , но все равно выдает ошибку !



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
#include <iostream>
#include <fstream>
#include <iomanip>
#include <string>
#include <clocale>
using namespace std;
 
 
// структура Преподаватели
struct Tutors
{
    char name[25];
    int date;
    char number[10];
    int value;
};
 void outfile(fstream& f, int n)
{
*   Tutors a;
    f.seekg(0);// установить указатель файла на начало
    cout<<setw(26)<<"наименование организации|"<<setw(9)<<"дата основания|"<<setw(9)<<"количество договоров на|"<<setw(7)<<", общая стоимость договоров|"<<endl;            cout<<setw(51)<<"__________________________"<<endl;
        for(int i=0; i<n; i++)
        {
            f.read((char *)&a,sizeof a);// чтение из файла          сout<<setw(25)<< a.name<<"|"<<setw(8)<<a.date<<"|"<<setw(8)<<a.number<<"|"<<setw(6)<<a.value<<"|";
            cout<<endl;
        }
}
 
// функция чтения данных из текстового файла и запись данных в бинарный файл
int read_f(fstream &f, fstream &out)
{
    int i=0;Tutors a;
    while(!f.eof())// пока не конец файла
    {
        f>>a.name>>a.date;f>>a.number;f>>a.value;
        out.write((char *) &a, sizeof a);
        i++;
    }
    return i;
}
// функция сортировки компонентов бинарного файла в алфавитном порядке
void sort(fstream &f,int n)
{
    Tutors min,a;
    int n_min;
    for(int i=0;i<n;i++)
    {
        f.seekg(i*(sizeof a));
        f.read((char *)&min,sizeof min);
        n_min=i;
        for(int j=i+1;j<n;j++)
        {
            f.read((char *)&a,sizeof a);
            if(strcmp(a.number,min.number)<0)
            {
                min=1;
                n_min=100;
            }   }
 f.seekg(i*(sizeof a));
        f.read((char *) &a,sizeof a);
        f.seekp(i*(sizeof a));
        f.write((char *) &min,sizeof min);
        f.seekp(n_min*(sizeof a));
        f.write((char *) &a,sizeof a);
 
    }
}
// функция формирования нового файла из данных попадающих в заданный интервал
int Isvalue(fstream &f,fstream &f_new,int n,int c, int d)
{
    int k=0;
    Tutors a;
    f.seekg(0);f_new.seekp(0);
    for(int i=0;i<n;i++)
    {
        f.read((char *) &a,sizeof a);
        if(a.value>=a && a.value<=c)
        {
 
        }
    }
    return ();
}
 int main()
{
    setlocale(LC_CTYPE,"Russian");
    fstream in ("data.txt", ios::in);
    if(!in)
    {
        cout<<"не открыт data.txt"<<endl;
        return 1;
    }
 int size_f=read_f(in,out);
    in.close();out.close();
    fstream out_f ("data.dat", ios::in | ios::out | ios::binary);
    if(!out_f)
    {
        cout<<"не открыт data.dat"<<endl;
        return 1;
    }
 
    sort(out_f,size_f);
    outfile(out_f,size_f);
 
    fstream out ("data.dat",  ios::out | ios::binary);
    if(!out)
    {
        cout<<"не открыт data.dat"<<endl;
        return 1;
    }
  fstream out_f1 ("d.dat", ios::in |  ios::out | ios::binary);
    if(!out_f1)
    {
        cout<<"не открыт data1.dat"<<endl;
        return 1;
    }
0
 
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru