Створення нової бази даних і її заповнення

Автор работы: Пользователь скрыл имя, 28 Февраля 2013 в 14:56, реферат

Описание

На основі компілятора C++Builder 6
Створити найпростішу базу даних у вигляді типізованого файлу, та реалізувати роботу з базою даних.
В програмі повинні реалізовуватися такі можливості:
- створення нової бази даних і її заповнення;
- перегляд всієї інформації, яка міститься в таблиці;
- обробка інформації по запиту згідно варіанту;
- видалення всієї інформації із бази;
- вихід з програми.

Работа состоит из  1 файл

основи_програмування.doc

— 104.00 Кб (Скачать документ)


 

На основі компілятора C++Builder 6

Створити найпростішу базу даних у вигляді типізованого файлу, та реалізувати роботу з базою даних.

В програмі повинні реалізовуватися такі можливості:

- створення нової бази даних і її заповнення;

- перегляд всієї інформації, яка міститься в таблиці;

- обробка інформації по запиту згідно варіанту;

- видалення всієї інформації із бази;

- вихід з програми.

Всі вказані завдання повинні бути реалізовані у програмі у вигляді  процедур або  функцій.

Робота програми повинна виконуватися за таким алгоритмом:

  1. після запуску програми користувач бачить меню;
  2. користувач обирає потрібну дію, після чого виконується очистка екрана;
  3. виконується обрана користувачем дія;
  4. після виконання дії  екран очищається і на екрані знову з’являється меню;
  5. користувач обирає наступну потрібну дію. Так пункти 2-5 повторюються до тих пір, доки користувач не обере дію виходу з програми.

Всі дії користувача повинні  контролюватися і супроводжуватися коментарями та підказками.

 

 Схеми записів наведені в  додатку А Кількість записів у базі даних - не менше 5.

 

Таблиця 2.1 – Варіанти завдань до курсової роботи

№ вар.

Схема запису

Запит

Рисунок A.4

Визначити найменування товару з мінімальною вартістю


 

 

 

Рисунок А.4 - Схема запису «Товарообіг»

 

Приклад

#include <vcl.h>

#pragma hdrstop

#include<iostream.h>

#include<conio.h>

#include<fstream.h>

//---------------------------------------------------------------------------

 

typedef struct {int den; short misyac; int rik;} d;

typedef struct {char tel[20]; char nazva[20];} firma;

typedef struct {d data ;char predmet[20];firma pozuvach;firma obvunyvach;}ss;

 

 

  void nb()

{  ofstream f1("h:\\курсовая\\Новая папка\\nb.dan",ios::binary);

clrscr();

cout<<endl<<endl<<endl<<endl<<endl<<endl<<endl<<endl;

cout<<"                          nova BAZA DANNIH stvorena";

  f1.close();

  getch();

  clrscr(); }

 

 

 

void redaguv()

{int c;

ss sud;

ofstream f1("h:\\курсовая\\Новая  папка\\nb.dan",ios::binary|ios::app);

   do

{clrscr();

cout<<endl<<" #  Vvedit' danni"<<endl<<endl;

 

cout<<"                                    den'                        "; cin>>sud.data.den;

while (sud.data.den<1||sud.data.den>31)

{gotoxy (1,wherey()-1);

delline();

cout<<"ERROR!"<<"vvedit' virne znachennya";

cout<<"      den'                        "; cin>>sud.data.den;}

 

cout<<"                                    misyatc'                    "; cin>>sud.data.misyac;

while (sud.data.misyac<1||sud.data.misyac>12)

{gotoxy (1,wherey()-1);

delline();

cout<<"ERROR!"<<"vvedit' virne znachennya";

cout<<"      misyatc'                    "; cin>>sud.data.misyac;}

 

cout<<"                                    rik                         "; cin>>sud.data.rik;

while (sud.data.rik<1900||sud.data.rik>2013)

{gotoxy (1,wherey()-1);

delline();

cout<<"ERROR!"<<"vvedit' virne znachennya";

cout<<"      rik                         "; cin>>sud.data.rik;}

 

cout<<"                                    predmet sudovoi spravu      "; cin>>sud.predmet;

cout<<"                                    firma pozuvacha             "; cin>>sud.pozuvach.nazva;

cout<<"                                    telefon pozuvacha           "; cin>>sud.pozuvach.tel;

cout<<"                                    firma obvunyvachyvanogo     "; cin>>sud.obvunyvach.nazva;

cout<<"                                    telefon obvunyvachyvanogo   "; cin>>sud.obvunyvach.tel;

 

 

   f1.write((char*)&sud,sizeof(sud));

cout<<endl<<endl<<" # Dlya zakinchennya vvedennya-natusnit' *\n"<<endl<<endl;

c=getch();}

while(c!='*');

f1.close();

 

cout<<"                          Novi danni zapisano \n";

getch();

clrscr();  }

 

 

 

void pereglyad()

{

ss sud;

 

ifstream f1("h:\\курсовая\\Новая  папка\\nb.dan",ios::binary|ios::in);

  clrscr();

f1.read((char*)&sud,sizeof(sud));

  while(!f1.eof())

{

cout<<"                den'                        "<<sud.data.den<<endl;

cout<<"                misyatc'                    "<<sud.data.misyac<<endl;

cout<<"                rik                         "<<sud.data.rik<<endl;

cout<<"                predmet sudovoi spravu      "<<sud.predmet<<endl;

cout<<"                firma pozuvacha             "<<sud.pozuvach.nazva<<endl;

cout<<"                telefon pozuvacha           "<<sud.pozuvach.tel<<endl;

cout<<"                firma obvunyvachyvanogo     "<<sud.obvunyvach.nazva<<endl;

cout<<"                telefon obvunyvachyvanogo   "<<sud.obvunyvach.tel<<endl<<endl<<endl;

  getch();

f1.read((char*)&sud,sizeof(sud)); }

f1.close();

 

  clrscr();}

 

 

 

void poshuk()

{

ss sud;

int k=0;

ifstream f1("h:\\курсовая\\Новая папка\\nb.dan",ios::binary|ios::in);

  clrscr();

f1.read((char*)&sud,sizeof(sud));

 

char n[50];

  cout<<" # oberit' vipovidny nazvy firmu obvunyvachuvanogo"<<endl<<endl;

  cout<<"                               ";

  cin>>n;

  cout<<endl;

 

while(!f1.eof())

{ if (strcmp(n,sud.obvunyvach.nazva)==0)

 

{ k++;

cout<<"                den'                        "<<sud.data.den<<endl;

cout<<"                misyatc'                    "<<sud.data.misyac<<endl;

cout<<"                rik                         "<<sud.data.rik<<endl;

cout<<"                predmet sudovoi spravu      "<<sud.predmet<<endl;

cout<<"                firma pozuvacha             "<<sud.pozuvach.nazva<<endl;

cout<<"                telefon pozuvacha           "<<sud.pozuvach.tel<<endl;

cout<<"                firma obvunyvachyvanogo     "<<sud.obvunyvach.nazva<<endl;

cout<<"                telefon obvunyvachyvanogo   "<<sud.obvunyvach.tel<<endl<<endl<<endl;

 

}

 

 

 

f1.read((char*)&sud,sizeof(sud));

}

  if (k==0)

cout<<"                   ERROR! Danna firma ne isnye";

f1.close();  getch();

clrscr();

  }

 

 

 

 

 

 

 

void zapit()

{int mas[50]; int kol[50];

ss sud;

int k=0;

ifstream f1("h:\\курсовая\\Новая  папка\\nb.dan",ios::binary|ios::in);

  clrscr();

f1.read((char*)&sud,sizeof(sud));

 

char n[50];

cout<<"    Vuznachutu, v yakomy roci bylo naibil'she sprav"<<endl<<endl<<endl;

  cout<<" # oberit' vipovidniy tup spravu"<<endl<<endl;

  cout<<"                               ";

  cin>>n;

  cout<<endl;

 

while(!f1.eof())

{

if (strcmp(n,sud.predmet)==0)

  {

 

mas[k]=sud.data.rik;

k++;

}

f1.read((char*)&sud,sizeof(sud));

}

if (k==0)

cout<<"                        ERROR! tcia sprava ne isnye";

else

 

{for(int i=0;i<k;i++)

  {int l;

  l=mas[i];

  kol[i]=0;

  for (int j=0;j<k;j++)

  {if (mas[j]==l)

  kol[i]++;}}

 

  int max; int i=0;

  max=kol[i];

  for (int j=0;j<k;j++)

  if (max<kol[j])

  {max=kol[j];

  i=j;

  }                                               

  cout<<"              kil'kist' sprav             "<<max<<endl;

  cout<<"              rik                         "<<mas[i];

 

 

 

 

}

f1.close();   getch();

clrscr();

   }

 

 

 

 

 

 

 

 

#pragma argsused

 

void tit ()

{cout<<endl<<endl<<endl<<endl<<endl<<endl<<endl<<endl;

cout<<"                               Robotu vukonala"<<endl;

cout<<"                              Rudakova Nataliya"<<endl;

cout<<"                                 Grupa IT-21"<<endl;

cout<<"                                 20  variant";

 

 

  getch(); }

 

 

  int vubor()

  {

  clrscr();

cout<<"         ****   ***   ****   ***       ***     ***   *   *  *   *  *   *"<<endl;

cout<<"         *     *   *     *  *   *     *   *   *   *  *   *  *  **   * *"<<endl;

cout<<"         ****  *****   ***  *****     *   *   *****  *****  * * *    *"<<endl;

cout<<"         *  *  *   *     *  *   *    *******  *   *  *   *  **  *   * *"<<endl;

cout<<"         ****  *   *  ****  *   *    *     *  *   *  *   *  *   *  *   *"<<endl<<endl<<endl;

 

 

cout<<"                          ******  SUDOVA  SPRAVA  *****"<<endl<<endl<<endl;

cout<<"                            * Stvorennya novoi BD   1"<<endl;

cout<<"                            * Dopovnennya BD        2"<<endl;

cout<<"                            * Pereglyad BD          3"<<endl;

cout<<"                            * Poshuk za klyuchem    4"<<endl;

cout<<"                            * Zaput                 5"<<endl;

cout<<"                            * Vuhid                 6"<<endl<<endl<<endl<<endl;

 

int user;

cout<<" # dlya vubory natusnit' vidpovidny chufry  ";cin>>user;

clrscr();

return user;}

 

int main(int argc, char* argv[])

{tit();

 

 

int user;

 

  do

  { user=vubor();

switch(user)

{case 1:

{cout<<"ctvorutu-2"<<endl;

  nb();

break;}

 

case 2:

cout<<"Redagyvatu-2"<<endl;

redaguv();

break;

 

case 3:

cout<<"Pereglyad-3"<<endl;

pereglyad();

break;

 

case 4:

cout<<"Poshuk za klyuchem-4"<<endl;

poshuk();

break;

 

case 5:

cout<<"Zaput-5"<<endl;

zapit();

break;

}

}

    while (user!=6);

 

 

clrscr();

cout<<endl<<endl<<endl<<endl<<endl<<endl<<endl<<endl;

cout<<"                          zavershennya robotu z BD";

  getch();

return 0;


Информация о работе Створення нової бази даних і її заповнення