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

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

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

Библиотека. Должники ООП С++ - C++

29.05.2011, 18:49. Просмотров 721. Ответов 4
Метки нет (Все метки)

Есть программа для библиотеки. Мне нужно реализовать поиск читателей - должников (т.е тех кто держит книгу больше месяца).
Вот основные фрагменты:
Основной класс прописан в хеадер файле:

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
class Library{
 
public:
    Library(){}
    ~Library(){}
 
    string GetChutach(){return libChutach;}
    string GetDay(){ return libDay;}
    string GetMounth(){ return libMounth;}
    string GetYear(){ return libYear;}
    string GetAuthor(){ return libAuthor;}
    string GetName(){ return libName;}
        
    void SetChutach(string chut){ libChutach=chut;}
    void SetDay(string days) {libDay=days;}
    void SetMounth(string mis) {libMounth=mis;}
    void SetYear(string years) {libYear=years;}
    void SetAuthor(string aut){ libAuthor=aut;}
    void SetName(string name){ libName=name;}
 
            void Print();
 
private:
    string libChutach;
    string libDay;
    string libMounth;
    string libYear;
    string libAuthor;
    string libName;
            
};
Вот как воспроизводится выдача книги:
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
void OutBook(){system("cls");
string sbuf;
Library bufLib;
cout<<endl;
cout<<Rus("___Выдача книги читателю___\n");
cout<<Rus("Автор:");
cin>>sbuf;
        bufLib.SetAuthor(sbuf);
 
        cout<<endl
                <<Rus("Название: ");
        cin>>sbuf;
        bufLib.SetName(sbuf);
 
        cout<<endl
                <<Rus("Дата выдачи книги -День-: ");
        cin>>sbuf;
        bufLib.SetDay(sbuf);
        cout<<endl;
            cout<<endl
                <<Rus("Дата выдачи книги -Месяц-: ");
        cin>>sbuf;
        bufLib.SetMounth(sbuf);
        cout<<endl;
            cout<<endl
                <<Rus("Дата выдачи книги -Год-: ");
        cin>>sbuf;
        bufLib.SetYear(sbuf);
        cout<<endl
                <<Rus("Кому выдана: ");
        cin>>sbuf;
        bufLib.SetChutach(sbuf);
        lib.push_back(bufLib);
        cout<<Rus("__________Готово!__________\n");
}
То есть, все записывается в вектор:
C++
1
vector <Library> lib;
И вот мне нужно реализовать поиск читателей, которые держат книгу больше месяца. При выдаче вводится День, Месяц, Год. И я никак не могу, каким образом можно это реализовать.

Прошу вас помогите с проблемой, курсовая робота, буду очень признателен.

Добавлено через 1 час 33 минуты
вверх..
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
29.05.2011, 18:49
Здравствуйте! Я подобрал для вас темы с ответами на вопрос Библиотека. Должники ООП С++ (C++):

Массив структур. Должники в порядке убывания - C++
Данные о жильцах дома и задолженности по ЖКХ (ФИО, № квартиры, сумма задолженности) хранятся в виде массива структур. Написать фрагмент...

ООП - C++
наследование - понятно агрегация - понятно использование - не понятно. что такое использование? спасибо.

ООП - C++
#pragma hdrstop #pragma argsused //#include &quot;Student.hpp&quot; //#include &quot;Prof.hpp&quot; //#include &quot;Personne.hpp&quot; #include &lt;conio.h&gt; ...

ООП - C++
Подскажите статью или книгу где рассказывается про динамические списки (с указателями,ссылками,динамической памятью и классами знаком)

ООП - C++
Господа у меня возникло 2 вопроса по ООП т.к. только не давно начал его изучать . 1) Не как не могу понять для чего умные люди его...

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

4
lvlkoo
.NET C#,ASP.NET MVC
385 / 341 / 117
Регистрация: 16.10.2010
Сообщений: 1,445
Завершенные тесты: 2
29.05.2011, 19:12 #2
почему строки?Обьяви значения целого типа...и сравнивай если больше 31 дня итд
0
Usefur
0 / 0 / 0
Регистрация: 15.09.2010
Сообщений: 74
29.05.2011, 23:01  [ТС] #3
вверх

Добавлено через 2 часа 11 минут
Ладно с этим.
Подскажите, как записать вектор в файл??

Добавлено через 5 минут
Так чтобы его записать, и потом можно было считать. Где то прочитал что лучше в бинарный файл, но я не знаю как реализовать. Напишите код пожалуйста, программисты...
0
Usefur
0 / 0 / 0
Регистрация: 15.09.2010
Сообщений: 74
30.05.2011, 23:41  [ТС] #4
up.......
0
Mogul-kan
23 / 23 / 2
Регистрация: 24.04.2010
Сообщений: 220
30.05.2011, 23:45 #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
void SaveBin (double **mass, const char* name)
{
    //создаем файл
    FILE *stream;
    stream=fopen(name,"wb");
    //определение количества строк 
    int  n,m;
    n=((int*)mass)[-1]; 
  
    //запись в файл количества строк
    fwrite(&n,sizeof(int),1,stream);
    
    int i,j;
    for(i=0;i<n;i++)
        {
             //подсчет количества элементов в строке
    
              m=get(mass,i);
             //запись в файл количества элементов строки
             fwrite(&m,sizeof(int),1,stream);
             //запись в файл строки
             fwrite(mass[i],sizeof(double),j,stream);
            }
    fclose(stream);
}
Считать из файла
C
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
void   loadBin(double **mass,const char *name)
{
    
 FILE *stream;
    stream=fopen(name,"rb");
    int i,j,n,m;
    fread(&n,sizeof(int),1,stream);
    mass=(double**)malloc((n+1)*sizeof(double *));
    
    for(i=0;i<n;i++)
        {
            fread(&m,sizeof(int),1,stream);
            mass[i]=(double *)malloc(m*sizeof(double)+sizeof(int));
            mass[i][m]=TT;
            for(j=0;j<m;j++)
                {
                    fread(&mass[i][j],sizeof(double),1,stream);
                    }
            }          
}
1
30.05.2011, 23:45
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
30.05.2011, 23:45
Привет! Вот еще темы с ответами:

C++ ООП - C++
Просьба дать какую-нибудь интересную программу, дабы теста на курс ООП. Чтобы не из книжки, а реально придуманная про программистом, или...

ООП в С++ - C++
Здравствуйте! Ответьте пожалуйста на несколько вопросов... p.s. буду рад , если ответы будут сопровождаться примерами :) Хочу...

ООП - C++
Привет всем, народ дайте какую-нибудь интересную задачку на ООП, (однообразные задачи из учебников достали уже), чтоб она затрагивала как...

ООП на С++ - C++
Помогите пожалуйста!! Не понимаю как это сделать(( Создать программу с классом Student порождающий обьекты - данные об студентах...


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

Или воспользуйтесь поиском по форуму:
5
Ответ Создать тему
Опции темы

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