Skocz do zawartości
Tiko35

Baza Danych W C++

Rekomendowane odpowiedzi

mam napisac baze danych w c++;

stworzyłem takie pliki:

bibl.h:

#define ROZMIAR 100static int licznik;class CBibl{	private:		char tytul[15];		char autor[10];		bool stan;	public:		CBibl *szukaj(char *);		int dodaj(char * );		int usun(char *);		CBibl(int r);		CBibl();	   void drukuj();			};	static CBibl tab[ROZMIAR];

bibl.cpp:

#include<iostream>#include "bibl.h"using namespace std;CBibl :: CBibl(){	//nr_telefonu = 0;  }void CBibl::drukuj(){	for (licznik =0;licznik<2;licznik++)	{printf( "%s", tab[licznik].autor); std::cout<<std::endl;}}int CBibl :: dodaj(char * aut){	if (licznik < ROZMIAR)	{		strcpy(tab[licznik].autor,aut);		cout<<"dodalem: "<<tab[licznik].autor<<endl;		return 1;	}	cout<<"Tablica pełna";	return 0;		} CBibl * CBibl :: szukaj(char * aut){	for(int i = 0; i < licznik; i++)	if (stricmp(tab[i].autor,aut) == 0) 	return & tab[i];	else cout<<"Nie znalazlem osoby"; 	return NULL;			   }  int CBibl :: usun(char * aut){	CBibl *op = szukaj(aut);	if (op==NULL) 	{		cout<<"Nie znalazlem autora wiec co mam usuwac?";		return 0;	}		else	{		int i;		for(i = op - tab; i < licznik -1; i++)		tab[i] = tab[i+1];		i--;		cout<<"usunalem";		return 1;	}	}

 

main.cpp:

#include<iostream>#include<conio.h>#include "bibl.h"using namespace std;int main(){		CBibl autor;	cout<<"\t\tBAZA DANYCH PWSZ"<<endl;	cout<<"Menu:\n";	cout<<"1 - dodaj osobe"<<endl<<"2 - usun osobe"<<endl<<"3 - szukaj osoby\n";	cout<<"4 - wyswietl osobe"<<endl<<"5 - ilosc osob w bazie\n\n\n\n\n";	cout<<"Wybierz jedna z powyzszych mozliwosci";	char wybor;	 cin>>wybor;	    /* switch(wybor)	{		case '1': cout<<"Podaj nazwisko";				char nazw[10];				cin>>nazw;			autor.dodaj(nazw);			break;		case '2': autor.usun(nazw);		break;	}   }while(1); */	getch();}

 

I nie wiem jak mam zrobic w programie głownym(main.cpp) tablice która zapamieta dane osób bym nastepnie mógł je wyswietlic..moze ma ktos jakis pomysł? poprostu nie wiem jak zrobic tablice która zapamietywała by te dane a później byłaby mozliwosc ich wyswietlenia, posortowania za pomocą funkcji napisanych w module "bibl.cpp"

Udostępnij tę odpowiedź


Odnośnik do odpowiedzi
Udostępnij na innych stronach

O ile dobrze się orientuje to zbiory (klasa std::set) jest implementowana za pomocą drzew czerwono-czarnych.

Kurcze a mi kazali impelemtnowac AVL i czerwono-czarne, szkoda że nie wiedziałem ze jest implementacja chociaż bym potestował jak się ma wydajnośc moich do standardowych.

Udostępnij tę odpowiedź


Odnośnik do odpowiedzi
Udostępnij na innych stronach

Dołącz do dyskusji

Możesz dodać zawartość już teraz a zarejestrować się później. Jeśli posiadasz już konto, zaloguj się aby dodać zawartość za jego pomocą.

Gość
Dodaj odpowiedź do tematu...

×   Wklejono zawartość z formatowaniem.   Przywróć formatowanie

  Dozwolonych jest tylko 75 emoji.

×   Odnośnik został automatycznie osadzony.   Przywróć wyświetlanie jako odnośnik

×   Przywrócono poprzednią zawartość.   Wyczyść edytor

×   Nie możesz bezpośrednio wkleić grafiki. Dodaj lub załącz grafiki z adresu URL.

Ładowanie


×
×
  • Dodaj nową pozycję...