Program na rezerváciu dovolenkových pobytov pre ubytovacie zariadenia

Delphi & Pascal (česká wiki)
Přejít na: navigace, hledání
Kategória: Programy v C, C++

Program: Cestovka.cppCestovka.hRezerv.cppRezerv.hUbytuj.cppUbytuj.h
Súbor exe: Cestovka.exe
Potrebné: Define.hRezerv.datUbytovne.dat

Program na rezerváciu dovolenkových pobytov pre ubytovacie zariadenia. O dovolenkovom pobyte sú známe tieto udaje
  • jednoznačný identifikátor pobytu (celé číslo)
  • lokalita
  • typ ubytovania( chata, hotel, rodinný penzion)
  • počet miest
  • cena za lôžko/noc
  • rezervácia

Program umožnuje vyhľadávanie voľných pobytov v zadanej lokalite s počtom lôžok väčším alebo rovným ako zadané číslo a s cenou menšou alebo rovnou ako zadaná hodnota a rezerváciu pobytu a zrušenie rezervácie na vybraný pobyt. Na prezentáciu zoznamu pobytov je použitý spojkový zoznam a jednotlivé položky záznamov majú dynamickú veľkosť. Všetky záznamy sú uložené v súbore.

POZOR: Program si kladie za cieľ ukázať prácu so spojkovým zoznamom a súbormi. Nečakajte "vymakané" grafické rozhranie ani "myšoidné" ovládanie.
/* ========================================================================== */
/*                                                                            */
/*   Rezerv.h                         Copyright (c) TrSek alias Zdeno Sekerak */
/*   Datum:20.05.2005                                    http://www.trsek.com */
/*                                                                            */
/*   Description                                                              */
/*                                                                            */
/* ========================================================================== */
 
#include "define.h"
 
 
class Rezerv
{
 
typedef struct Rezervacia
{
  int      id;        // 0-index zaznamu
  char     dlzm;      // dlzka mena
  char*    meno;      // 1-meno objednavatela
  int      id_ubyt;   // 2-index ubytovne
  int      rezerv;    // 3-pocet rezervovanych
 
  Rezervacia* pred;   // smernik na predosli
  Rezervacia* zani;   // smernik na nasledovny
};
 
private:
   Rezervacia* zaz;
   Rezervacia* prvy;
   int  akt;
   int  pocet;
   int  max_id;
   char pom[MAX_STR];
 
   // pre potreby podmienky
   int  find_id;
   char find_sign;
   char find_meno[MAX_STR];
 
 
public:
   Rezerv();
   ~Rezerv();
 
   void  Save();
   void  Load();
   void  Insert(char id, char* meno);
   int   GetPocetId();
   char* GetName(char id);
   char* Get(char id);
   int   GetInt(char id);
   int   Rezervuj(int poc, int id_ubyt);
   void  AddNew(void);
   void  Delete(void);
   void  Show(void);
   void  Bar(void);
   void  Find(char id, char sign, char* meno);
   int   IsCondition(void);
   void  DeleteAll(void);
   char* GetSign(char id);
   int   CompareS(char* prvy, char* druhy, char sign);
   int   Compare(float prvy, float druhy, char sign);
 
   char* ToStr(int poc);
   void  Chyba(char* text);
   int   GetPocet(void) { return pocet; }
   int   GetAktual(void) { return akt; }
 
   int   MoveFirst(void);
   int   MoveNext(void);
   int   MovePrev(void);
   int   MoveLast(void);
};