Нужно доделать программу (ООП)
Добавлено: 21 апр 2013, 21:04
Привет Всем. Очень требуется Ваша помощь.
Нужно дописать два метода: сортировку по разным полям класса и поиск нужной информации за конкретным признаком.
Добавление, редактирование, удаление и вывод информации на экран я уже сделал. Все задания делаются к базе данных. Очень Вас прошу, если нужно заплатить деньги, я не против, просто нужно сдать курсовую работу.
Вот сам код:
Или Файл - http://www.mediafire.com/?2yul3uc9q22p31s
Нужно дописать два метода: сортировку по разным полям класса и поиск нужной информации за конкретным признаком.
Добавление, редактирование, удаление и вывод информации на экран я уже сделал. Все задания делаются к базе данных. Очень Вас прошу, если нужно заплатить деньги, я не против, просто нужно сдать курсовую работу.
Вот сам код:
Код: Выделить всё
#include <iostream.h>
#include <stdio.h>
#include <conio.h>
#include <string.h>
#include <stdlib.h>
class CashBox
{
private:
static int count;
int number;
enum {max=15};
char Name[max];
char departure_date[max];
char departure_time[max];
char arrival_date[max];
char arrival_time[max];
int price;
public:
static int getCount()
{ return count; }
static void setCount(int c)
{ count = c; }
void setNumber(int n)
{ number = n; }
void get()
{
number=CashBox::getCount()+1;
CashBox::setCount(number);
cout<<"\Bbedit Name: "; gets(Name);
cout<<"\Press Date of Departure: "; gets(departure_date);
cout<<"\Press Time of Departure: "; gets(departure_time);
cout<<"\Press Date of Arrival: "; gets(arrival_date);
cout<<"\Press Time of Arrival: "; gets(arrival_time);
cout<<"\Bbedit price: "; cin>>price;
}
void show() const
{
printf("\n%2d %15s %8s %8s %8s %8s %10d",number, Name, departure_date, departure_time, arrival_date, arrival_time, price);
}
};
class DataBase
{
private:
CashBox CB[100];
int i;
public:
DataBase() : i(0)
{}
void add()
{
//CB[i] = new CashBox;
CB[i++].get();
}
void del()
{
int n;
cout<<"\nWitch number you want to delete? ";
cin>>n;
for(int j=n-1; j<CashBox::getCount()-1; j++)
{
CB[j] = CB[j+1];
CB[j].setNumber(j+1);
}
delete &CB[i--];
CashBox::setCount( CashBox::getCount()-1 );
}
void show() const
{
for(int j=0; j<CashBox::getCount(); j++)
CB[j].show();
}
void edit()
{
int n;
cout<<"\nWitch number you want to edit? ";
cin>>n;
CB[n-1].get();
CB[n-1].setNumber(n);
CashBox::setCount(CashBox::getCount()-1);
}
};
int CashBox::count = 0;
int main()
{
clrscr();
DataBase db;
char choice;
do{
cout<<"\nAdd record-a \nDelete record-d ";
cout<<"\nShow records-s \nEdit records-e \nQuit-q\n";
cin>>choice;
switch(choice)
{
case 'a': db.add();
break;
case 'd': db.del();
break;
case 's': db.show();
break;
case 'e': db.edit();
break;
case 'q': cout<<"\nCreated by Andrew";
cout<<"\nPress any key to exit!";
getch();
exit(1);
case 'c': clrscr(); break;
default : cout<<"\nUnknown command!\n";
}
//cout<<"\nContinue(y/n)? ";
//cin>>choice;
}while(choice);
getch();
return 0;
}