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

С++ для начинающих

Войти
Регистрация
Восстановить пароль
 
gane
0 / 0 / 0
Регистрация: 14.10.2011
Сообщений: 7
#1

Работа с файлами! - C++

11.06.2013, 13:24. Просмотров 266. Ответов 0
Метки нет (Все метки)

Задание:
В спортивном клубе проводится предварительная запись в группы для занятий. Каждый клиент указывает количество занятий, дни и время, вид занятий. Составить график занятий для всех желающих. Затем определить группы, в которые попало количество клиентов меньшее, чем задано пользователем. Организовать диалог с пользователем, напечатать исходные данные и результаты в наглядном виде, с заголовками.


1. Ввод-вывод информации организовать с помощью функций библиотеки fstream.h.
2. Входная информация берется из текстового или бинарного файла (по желанию автора про-граммы).
Текстовый файл набирается в любом текстовом редакторе; записи должны отображаться на экране по одной в строке (т.е. одна под другой) для удобства анализа результатов.
Если используется бинарный файл, необходимо обеспечить его сопровождение: возмож-ность создания, редактирования, печати (для тестирования).
3. Для описания данных использовать тип struct. Каждая запись должна иметь хотя бы одно текстовое поле (т.е. символьную информацию фиксированной длины или произвольной, если пожелаете), которое может содержать пробелы.
Файл не читать полностью в оперативную память! То есть не использовать массивы структур, а обрабатывать записи по очереди, имея один или несколько экземпляров в структурах или небольших массивах структур.
Файл обрабатывать "до конца файла", то есть он может иметь разное количество записей, которая до обра-ки файла вам неизвестна.
4. Результаты работы программы выводятся в выходной файл и на экран.
5. Провести тестирование программы на вариантах входной информации, которые предусматривают различные ситуации в границах ограничений в постановке задачи. Анализ результатов необходимо провести самостоятельно в демонстрации программы преподавателю и зафиксировать тесты расчетам или ссылками на соответствующие текстовые файлы (если результаты не надо проверять: например, сортировка).


Вот, что у меня есть:

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
#include "stdafx.h"
#include <iostream>
#include <fstream>
using namespace std;
 
struct group
{
    int lesson;                                                   // название занятий
    int day;                                                      // день занятий
    int time;                                                     // время занятий
    int count;                                                    // количество занятий
    int client1, client2, client3, client4;                       // количество клиентов
};
void add_client(group*gr,int size)
{
    
    for(int i = 0; i < size; i++)
    {
        system("cls");
        cout << "Выбирете группу: 1. Фитнес, 2. Пилатес, 3. Гимнастика, 4. Качалка\n";
        cin >> gr[i].lesson;
        cout << "Введите количество занятий\n";
        cin >> gr[i].count;
        cout << "Выбирете дни: 1. Понедельник, 2. Вторник, 3. Среда, 4. Четверг, 5. Пятница\n";
        cin >> gr[i].day;
        cout << "Выбирете время занятий: 1. 11.00, 2. 14.00, 3. 18.00\n";
        cin >> gr[i].time;
        cout << "\n";
    }
}
void print_client(group*gr,int size)
{   cout << "группа\tколичество занятий\tдни\tвремя занятий"<<"\n";
    for(int i = 0; i < size; i++)
    {
        //cout << "группа\tколичество занятий\tдни\tвремя занятий"<<"\n";
        cout << gr[i].lesson << "\t\t"  <<  gr[i].count << "\t\t" <<  gr[i].day<<"\t\t" <<  gr[i].time<< "\n";      
    }
 
}
void save(char* filename,group*gr,int size)
{
    ofstream fout("new.txt");
        fout << "Группы: 1. Фитнес, 2. Пилатес, 3. Гимнастика, 4. Качалка"<<"\n";
        fout << "Дни: 1. Понедельник, 2. Вторник, 3. Среда, 4. Четверг, 5. Пятница"<<"\n";
        fout << "Время занятий: 1. 11.00, 2. 14.00, 3. 18.00"<<"\n";
        fout << "группа\tкол-во занятий\tдни\t\tвремя занятий"<<"\n";
    for( int i=0; i<size; i++ )
        fout << gr[i].lesson << "\t\t"  <<  gr[i].count << "\t\t" <<  gr[i].day<<"\t\t" <<  gr[i].time<< "\n";  
    fout.clear();
}
void open(char* filename,group*gr,int size)
{
    //// считывание из текстового файла в структуры
    ifstream fin(filename);
    cout << "вид занятий\tколичество занятий\tдень\tвремя занятий"<<"\n";
    for ( int i=0; i<size; i++ )
    {
        fin>>gr[i].lesson>>gr[i].count>>gr[i].day>>gr[i].time;  
        cout << gr[i].lesson << "\t\t"  <<  gr[i].count << "\t\t\t" <<  gr[i].day<<"\t" <<  gr[i].time<< "\n";      
    }
    fin.clear();
    cout<<endl;
 
}
void main()
{
    setlocale(0,"rus");
    int size = 0;
    cout << "Введите количество клиентов\n";
    cin >> size;
    group* gr = new group[size];
    add_client(gr,size);
    print_client(gr,size);
    char* filename = new char[255];
    cout << "Введите имя файла\n";
    cin>>filename;
    save(filename,gr,size);
    delete[]gr;
    delete []filename;
    system("pause");
}
Надо переделать, чтоб считывалось с файла. И подсчитывалось количество клиентов в каждой группе. Помогите с чем сможете))
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
11.06.2013, 13:24     Работа с файлами!
Посмотрите здесь:

Работа с файлами - C++
Программа на TC! Создать файл, содержащий сведения о товарах, хранящихся на складе: шифр, наименование товара, количество единиц,...

Работа с файлами - C++
Скажите поожалуйста как сделать что бы программа могла читать и записывать в любой фаил информацию т.е Могла читать из фаила и...

Работа с файлами - C++
#include &lt;iostream&gt; #include &lt;conio.h&gt; #include &lt;cstring&gt; #include &lt;stdio.h&gt; #include &lt;stdlib.h&gt; #include &lt;fstream&gt; using...

Работа с файлами - C++
задача выводит банные, просматривает и нужно удалять , для простоты скажим удалять всё не пользуясь способом открытия файла. ...

работа с файлами - C++
помогите пожалуйста! 2. Дан файл f, компоненты которого являются целыми числами. Никакой из компонентов файла не равен нулю. ...

Работа с файлами - C++
Задали лабораторку не успеваю разобраться что к чему?Помоги пожайлуста.

Работа с файлами - C++
Добрый день. Мне необходимо считать из 2 папок текстовые файлы( имя как латиница,так и кириллица). После этого сравнить их содержимое и в...

работа с файлами - C++
ребят, подскажите, где можно почитать про работу с файлами, а именно: как всю информацию из файла записать в массив ? после того, как...

Работа с файлами - C++
Как можно создавать файлы в цикле? Например, хочу создать 10 файлов в определенной директории.

Работа с файлами - C++
Заполнить файл N действительными числами, полученными с помощью генератора случайных чисел. Найти сумму минимального и максимального...


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

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

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