Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #include <stdio.h>
- #include <iostream>
- #include <conio.h>
- #include <string.h>
- #include <windows.h>
- #include <dirent.h>
- #define L 20
- #define MAX 5
- using namespace std;
- void gotoxy(int x, int y)
- {
- COORD c;
- c.X = x-1;
- c.Y = y-1;
- SetConsoleCursorPosition(GetStdHandle(STD_OUTPUT_HANDLE), c);
- }
- void piszMenu(int x, int y)
- {
- gotoxy(x,y);
- cout<<"---------MENU-----------"<<endl;
- cout<<"1. Czyszczenie"<<endl;
- cout<<"2. Czytanie"<<endl;
- cout<<"3. Drukowanie"<<endl;
- cout<<"4. Wartosc"<<endl;
- cout<<"5. Zapisz do pliku"<<endl;
- cout<<"6. Wczytaj z pliku"<<endl;
- cout<<"7. DeleteCurrent"<<endl;
- cout<<"8. ShowCurrent"<<endl;
- cout<<"a. Next"<<endl;
- cout<<"b. Previous"<<endl;
- cout<<"c. SetCurrent"<<endl;
- cout<<"0. Wyjscie z programu"<<endl;
- }
- class towar
- {
- protected:
- char marka[L], model[L];
- float cena, moc;
- int sztuk, rocznik;
- public:
- towar();
- void czysc();
- void pobierz(char *marka, char *model, float cena, float moc, int rocznik, int sztuk);
- void drukuj();
- float wartosc();
- //nowe rzeczy
- void piszXY(int x, int y);
- // uzupełniona o setery i getery
- void setMarka(char *naz);
- void setModel(char *model);
- void setCena(float cen);
- void setMoc(float moc);
- void setRocznik(int rocznik);
- void setSztuk(int szt);
- char* getMarka();
- char* getModel();
- float getCena();
- float getMoc();
- int getSztuk();
- int getRocznik();
- };
- class bazatowar:public towar
- {
- protected:
- towar *tab; // Wskazanie do obiektu (ÓW) towar
- towar *trash;
- towar *found;
- int rozmiar;
- int licznosc;
- int licznoscFound;
- int licznoscTrash;
- int current;
- int currentFound;
- int currentTrash;
- FILE *zp;
- private:
- int i;
- public:
- bazatowar(int rozmiar);
- void dodajkolejny(char *marka, char *model, float cena, float moc, int rocznik, int sztuk);
- void czysccalosc();
- void drukujcalosc();
- void wartosci();
- float sumawartosc();
- void saveFile();
- void openFile();
- void next();
- void previous();
- void showCurrent(int x, int y);
- void setCurrent(int index);
- void deleteCurrent();
- int menuEdytuj();
- void setRocznikCurrent(int rok);
- bool searchCena(float min, float max);
- bool searchMarka(char *marka);
- bool searchMarkaCena(char *marka, float min, float max);
- void showCurrentFound(int x, int y);
- void nextFound();
- void previousFound();
- string** getFileList();
- bool hasSuffix(const string& s, const string& suffix);
- string openFileFromList(char fname[L]);
- bool fileExists(char fname[L]);
- };
- towar::towar()
- {
- strcpy(marka, " "); //konstruktor zwykle powinien czyscic
- strcpy(model, " ");
- moc=0;
- cena = 0;
- sztuk = 0;
- rocznik=0;
- }
- void towar::czysc()
- {
- strcpy(marka, " ");
- strcpy(model, " ");
- moc=0;
- cena = 0;
- sztuk = 0;
- rocznik=0;
- }
- void towar::pobierz(char *marka, char *model, float cena, float moc, int rocznik, int sztuk)
- {
- strcpy(this->marka, marka);
- strcpy(this->model, model);
- this->cena = cena;
- this->moc = moc;
- this->sztuk = sztuk;
- this->rocznik = rocznik;
- }
- void towar::drukuj()
- {
- cout<<"Marka: "<<marka<<endl;
- cout<<"Model: "<<model<<endl;
- cout<<"Moc: "<<moc<<endl;
- cout<<"Cena: "<<cena<<endl;
- cout<<"Rocznik: "<<rocznik<<endl;
- cout<<"Ilosc: "<<sztuk<<endl;
- cout<<"------------------------"<<endl;
- //cout<<marka<<" "<<model<<" "<<moc<<" "<<cena<<" "<<sztuk<<""<<endl;
- }
- float towar::wartosc()
- {
- return cena*sztuk;
- }
- void towar::setMarka(char *naz)
- {
- strcpy(marka, naz);
- }
- void towar::setModel(char *mod)
- {
- strcpy(model, mod);
- }
- void towar::setMoc(float moc)
- {
- this->moc=moc;
- }
- void towar::setCena(float cen)
- {
- cena = cen;
- }
- void towar::setSztuk(int szt)
- {
- sztuk = szt;
- }
- void towar::setRocznik(int rocznik)
- {
- this->rocznik=rocznik;
- }
- char* towar::getMarka()
- {
- return marka;
- }
- char* towar::getModel()
- {
- return model;
- }
- float towar::getCena()
- {
- return cena;
- }
- float towar::getMoc()
- {
- return moc;
- }
- int towar::getSztuk()
- {
- return sztuk;
- }
- int towar::getRocznik()
- {
- return rocznik;
- }
- void towar::piszXY(int x, int y)
- {
- //lepiej 2 metody na etykiety i wartosci (oddzielnie)
- gotoxy(x,y);
- cout<<"Marka: ";
- gotoxy(x,y+1);
- cout<<"Model: ";
- gotoxy(x,y+2);
- cout<<"Moc: ";
- gotoxy(x,y+3);
- cout<<"Rocznik: ";
- gotoxy(x,y+4);
- cout<<"Cena: ";
- gotoxy(x,y+5);
- cout<<"Ilosc: ";
- gotoxy(x+8,y);
- cout<<marka;
- gotoxy(x+8,y+1);
- cout<<model;
- gotoxy(x+8,y+2);
- cout<<moc;
- gotoxy(x+8,y+3);
- cout<<rocznik;
- gotoxy(x+8,y+4);
- cout<<cena;
- gotoxy(x+8,y+5);
- cout<<sztuk;
- }
- /****************Metody Bazatowar******************/
- bazatowar::bazatowar(int rozmiar)
- {
- //pytanie o rozmiar przeniesiony do main
- this->rozmiar = rozmiar;
- tab = new towar[rozmiar];
- found = new towar[rozmiar];
- trash = new towar[rozmiar];
- for (i=0; i<rozmiar; i++) //historycznie, mozna wyrzucic
- tab[i].czysc();
- licznosc = 0;
- licznoscTrash=0;
- licznoscFound=0;
- current=-1;
- currentTrash=-1;
- currentFound=-1;
- }
- void bazatowar::czysccalosc()
- {
- for (i=0; i<rozmiar; i++)
- tab[i].czysc();
- licznosc = 0;
- current=-1;
- }
- void bazatowar::dodajkolejny(char *marka, char *model, float cena, float moc, int rocznik, int sztuk)
- { //metoda powinna zwracać nr błędu
- if(licznosc<rozmiar)
- {
- // strcpy(tab[licznosc].marka,naz);
- // cena = cen;
- // tab[licznosc].sztuk = szt;
- tab[licznosc].pobierz(marka, model, cena, moc, rocznik, sztuk);
- current=licznosc;
- licznosc++;
- }
- }
- void bazatowar::drukujcalosc()
- {
- for(i=0;i<rozmiar;i++)
- tab[i].drukuj();
- }
- void bazatowar::wartosci()
- {
- for(i=0;i<rozmiar;i++)
- cout<<tab[i].wartosc()<<endl;
- }
- float bazatowar::sumawartosc()
- {
- float suma_wart=0;
- for(i=0;i<rozmiar;i++)
- suma_wart+=tab[i].wartosc();
- return suma_wart;
- }
- void bazatowar::next(){
- if(current<licznosc-1) //current musi być mniejszy o 1 od liczności bo indexy w tablicy zaczynają się od 0
- current++;
- }
- void bazatowar::nextFound()
- {
- if(currentFound<licznoscFound-1) //current musi być mniejszy o 1 od liczności bo indexy w tablicy zaczynają się od 0
- currentFound++;
- }
- void bazatowar::previous(){
- if(current>0) // Current musi być większy od 0, bo nie ma w tablicy indexy mniejszego od 0
- current--;
- }
- void bazatowar::previousFound(){
- if(currentFound>0) // Current musi być większy od 0, bo nie ma w tablicy indexy mniejszego od 0
- currentFound--;
- }
- void bazatowar::showCurrent(int x, int y)
- {
- if(current>=0) {
- tab[current].piszXY(x, y);
- cout<<endl;
- }
- //sprawdzamy czy element obecny istnieje w tablicy, jesli current mniejszy niz 1 znaczy nie ma czego wypisywac
- }
- void bazatowar::showCurrentFound(int x, int y)
- {
- if(current>=0) //Sprawdzamy czy current ma swoje odniesienie w tablicy - jest większy lub równy 0; Reszta nas nie interesuje;
- //Current musi być mniejszy od licznosci ale sprawdzamy to w poprzednich metodach
- found[currentFound].piszXY(x, y);
- }
- void bazatowar::setCurrent(int index)
- {
- if(index>=0 && index<licznosc)
- current=index;
- }
- void bazatowar::deleteCurrent()
- {
- if(current>=0 && licznosc>1)
- {
- for(i=current; i<licznosc-1; i++)
- tab[i] = tab[i+1];
- licznosc--;
- }
- else
- {
- if(licznosc==1)
- {
- current=-1;
- licznosc--;
- }
- }
- }
- /*
- void bazatowar::setRocznikCurrent(int rok)
- {
- if(current>=0 && licznosc>1)
- {
- tab[current].rocznik = rok;
- }
- }
- */
- int bazatowar::menuEdytuj()
- {
- int m;
- cout<<"Wybierz co chcesz edytowac:"<<endl;
- cout<<"1. Marka"<<endl;
- cout<<"2. Model"<<endl;
- cout<<"3. Moc"<<endl;
- cout<<"4. Rocznik"<<endl;
- cout<<"5. Ilosc"<<endl;
- cout<<"6. Cena"<<endl;
- cin>>m;
- return m;
- }
- //*****************Pobieranie i saveFile ********************
- bool bazatowar::hasSuffix(const string& s, const string& suffix)
- {
- return (s.size() >= suffix.size()) && equal(suffix.rbegin(), suffix.rend(), s.rbegin());
- }
- string** bazatowar::getFileList()
- {
- string** fileList;
- fileList = new string*[2];
- system("CLS");
- cout<<"Pliki w folderze zawierajacym bazy: "<<endl;
- int i=1;
- string path = "D:\\OneDrive\\Dev\\Projekt\\Bazy\\";
- DIR *dir = opendir(path.c_str());
- if(dir)
- {
- dirent *entry;
- while((entry = readdir(dir))!= NULL)
- {
- if(bazatowar::hasSuffix(entry->d_name, ".db"))
- {
- cout<<i<<". "<< entry->d_name<<endl;
- i++;
- fileList[i][i]=i;
- fileList[i][i+1]=entry->d_name;
- }
- }
- return fileList;
- cout<<fileList[0][0];
- cout<<fileList[0][1];
- }
- if(i==1)
- cout<<"Nie znaleziono plikow.";
- cout<<endl<<"--------------------"<<endl;
- closedir(dir);
- }
- void bazatowar::saveFile()
- {
- // cout<<"saveFileywanie pliku";
- zp = fopen("baza.db", "wb"); //otwiera plik, sprawdza czy adres pliku nie jest pusty przez co nie można go otworzyć
- fwrite(&rozmiar, sizeof(rozmiar), 1, zp); //saveFileywanie rozmiaru do pliku baza.db
- fwrite(&licznosc, sizeof(licznosc), 1, zp);//saveFileywanie licznosci do pliku baza.db
- fwrite(tab, sizeof(*tab)*rozmiar, 1, zp); //saveFileywanie tabeli klasy towar do pliku
- fclose(zp); //zamykanie pliku
- // DRUGA METODA
- // for (i=0; i<rozmiar; i++)
- // fwrite(tab, sizeof(*tab),1,zp)
- }
- void bazatowar::openFile()
- {
- // cout<<"openFile pliku";
- zp = fopen("baza.db", "rb"); //openFile pliku baza.db
- fread(&rozmiar, sizeof(rozmiar), 1, zp); //odczytywanie rozmiaru
- fread(&licznosc, sizeof(licznosc), 1, zp); //odczytywanie licznosci
- for(i=0; i<rozmiar; i++) //odczytywanie nazwy ceny i sztuk pętlą przez metody get
- {
- fread(&tab[i], sizeof(tab[i]),1, zp); // Czyta tablicę, konkretny element
- //cout<<tab[i].getmarka()<<" "<<tab[i].getCena()<<" "<<tab[i].getSztuk()<<endl; //Wypisuje nazwę, cenę, sztuk
- }
- system("CLS");
- current=0;
- cout<<"Dane wczytano z pliku."<<endl;
- fclose(zp); //zamykanie pliku
- // DRUGA METODA
- //fread(tab, sizeof(*tab)*rozmiar, 1, zp);
- }
- string bazatowar::openFileFromList(char fname[L])
- {
- char baza[L];
- string fileTable[i];
- string fileName(fname);
- strcat(fname, ".db");
- strcpy(baza, fname);
- // cout<<"openFile pliku";
- cout<<"fname: "<<fname<<endl;
- cout<<"fileName: "<<fileName<<endl;
- cout<<"baza: "<<baza<<endl;
- if(zp = fopen(baza, "rb"))
- return fileName;
- else
- return "0";
- //openFile pliku baza.db
- fread(&rozmiar, sizeof(rozmiar), 1, zp); //odczytywanie rozmiaru
- fread(&licznosc, sizeof(licznosc), 1, zp); //odczytywanie licznosci
- for(i=0; i<rozmiar; i++) //odczytywanie nazwy ceny i sztuk pętlą przez metody get
- {
- fread(&tab[i], sizeof(tab[i]),1, zp); // Czyta tablicę, konkretny element
- //cout<<tab[i].getmarka()<<" "<<tab[i].getCena()<<" "<<tab[i].getSztuk()<<endl; //Wypisuje nazwę, cenę, sztuk
- }
- system("CLS");
- current=0;
- cout<<"Dane wczytano z pliku: "<<baza<<"."<<endl;
- fclose(zp); //zamykanie pliku
- // DRUGA METODA
- //fread(tab, sizeof(*tab)*rozmiar, 1, zp);
- }
- bool bazatowar::fileExists(char fname[L])
- {
- if (FILE *file = fopen(fname, "r")) {
- fclose(file);
- return true;
- } else {
- return false;
- }
- }
- bool bazatowar::searchCena(float min, float max)
- {
- licznoscFound=0;
- currentFound=-1;
- for(i=0; i<licznosc; i++)
- if(tab[i].getCena()>=min && tab[i].getCena()<=max)
- {
- found[licznoscFound]=tab[i];
- licznoscFound++;
- }
- if(licznoscFound)
- {
- currentFound=0;
- return 1;
- }
- else
- return 0;
- }
- bool bazatowar::searchMarka(char *marka)
- {
- //cout<<"tab["<<i<<"]"<<tab[i].getMarka();
- //cout<<"marka wyszukana: "<<marka;
- licznoscFound=0;
- currentFound=-1;
- for(i=0; i<licznosc; i++)
- {
- //cout<<"tab["<<i<<"]"<<tab[i].getMarka();
- if(!strcmp(tab[i].getMarka(), marka))
- {
- found[licznoscFound]=tab[i];
- licznoscFound++;
- }
- }
- if(licznoscFound)
- {
- currentFound=0;
- return 1;
- }
- else
- return 0;
- }
- bool bazatowar::searchMarkaCena(char *marka, float min, float max)
- {
- //cout<<"tab["<<i<<"]"<<tab[i].getMarka();
- //cout<<"marka wyszukana: "<<marka;
- licznoscFound=0;
- currentFound=-1;
- for(i=0; i<licznosc; i++)
- {
- //cout<<"tab["<<i<<"]"<<tab[i].getMarka();
- if(!strcmp(tab[i].getMarka(), marka) && tab[i].getCena()>=min && tab[i].getCena()<=max)
- {
- found[licznoscFound]=tab[i];
- licznoscFound++;
- }
- }
- if(licznoscFound)
- {
- currentFound=0;
- return 1;
- }
- else
- return 0;
- }
- main()
- {
- // towar tab[MAX], t2, tablica[5];
- char n[L], m[L], zn, mark[L], mod[L], menu, fileName[L];
- float c, moc, min, max;
- int sz, i, rozmiar, r;
- cout<<"Podaj ilosc rekordow: ";
- cin>>rozmiar;
- cin.ignore();
- bazatowar baza(rozmiar);
- do
- {
- cout<<"1. Plik"<<endl;
- //cout<<"1. Czyszczenie"<<endl;
- cout<<"2. Czytanie"<<endl;
- cout<<"3. Drukowanie"<<endl;
- cout<<"4. Wartosc"<<endl;
- cout<<"5. Zapisz do pliku"<<endl;
- cout<<"6. Wczytaj z pliku"<<endl;
- cout<<"7. DeleteCurrent"<<endl;
- cout<<"8. ShowCurrent"<<endl;
- cout<<"9. Edytuj"<<endl;
- cout<<"a. Next"<<endl;
- cout<<"A. NextFound"<<endl;
- cout<<"b. Previous"<<endl;
- cout<<"B. PreviousFound"<<endl;
- cout<<"c. SetCurrent"<<endl;
- cout<<"s. searchCena"<<endl;
- cout<<"z. SearchMarka"<<endl;
- cout<<"S. CurrentFound"<<endl;
- cout<<"x. searchMarkaCena"<<endl;
- cout<<"0. Wyjscie z programu"<<endl;
- zn=getch();
- system("CLS");
- switch(zn)
- {
- case '1':
- do
- {
- cout<<"1. Nowy plik."<<endl;
- cout<<"----------------"<<endl;
- cout<<"2. Pokaz liste plikow."<<endl;
- cout<<"3. Otworz plik."<<endl;
- cout<<"----------------"<<endl;
- cout<<"4. Zapisz plik"<<endl;
- cout<<"5. Zapisz jako nowy plik"<<endl;
- cout<<"----------------"<<endl;
- cout<<"0. Powrot"<<endl;
- menu=getch();
- switch(menu)
- {
- case '1':
- {
- char c;
- system("CLS");
- cout<<"Podaj ilosc rekordow nowej bazy: ";
- do
- {
- cin>>rozmiar;
- cin.ignore();
- if(rozmiar<=0)
- cout<<"Podaj rozmiar wiekszy niz 0"<<endl;
- else
- {
- bazatowar baza(rozmiar);
- baza.czysccalosc();
- }
- } while(rozmiar<=0);
- do
- {
- system("CLS");
- cout<<"Czy chcesz od razu dodac rekordy? 1. Tak | 0. Nie"<<endl;
- c=getch();
- } while (c!='1' && c!='0');
- if(c=='1')
- {
- for(int i=0;i<rozmiar; i++)
- {
- char n[L],m[L];
- int moc, r, sz;
- float c;
- system("CLS");
- cout<<"Podaj rekord nr: "<<i+1<<". Pozostalo do konca: "<<rozmiar-(i+1)<<endl;
- do
- {
- cout<<"Marka: ";
- gets(n);
- if(strlen(n)==0)
- cout<<"Marka nie moze byc pusta."<<endl;
- } while (strlen(n)==0);
- do
- {
- cout<<"Model: ";
- gets(m);
- if(strlen(m)==0)
- cout<<"Model nie moze byc pusty."<<endl;
- } while (strlen(m)==0);
- do
- {
- cout<<"Moc: ";
- cin>>moc;
- if(moc<=0)
- cout<<"Moc musi byc wieksza niz 0"<<endl;
- } while (moc<=0);
- do
- {
- cout<<"Rocznik: ";
- cin>>r;
- if(r<=1950)
- cout<<"Rocznik musi byc wiekszy niz 1950"<<endl;
- } while(r<=1950);
- do
- {
- cout<<"Cena: ";
- cin>>c;
- if(c<=0)
- cout<<"Cena musi byc wieksza niz 0"<<endl;
- } while (c<=0);
- do
- {
- cout<<"Sztuk: ";
- cin>>sz;
- if(sz<0)
- cout<<"Ilosc sztuk musi byc rowna lub wieksza od 0"<<endl;
- } while (sz<0);
- cin.ignore();
- baza.dodajkolejny(n,m,c,moc,r,sz);
- }
- }
- } // koniec case 1 - nowy plik
- break;
- case '2': baza.getFileList(); // wyswietlanie listy plikow
- break;
- case '3':
- {
- char fname[L];
- baza.getFileList();
- cout<<"Podaj numer pliku ktory chcesz otworzyc."<<endl;
- gets(fname);
- if(baza.openFileFromList(fname) != "0")
- strcpy(fileName, fname);
- } //otwieranie pliku z listy
- break;
- case '4':
- {
- baza.saveFile();
- cout<<"fileName: "<<fileName;
- break;
- }
- case '0':
- menu=0;
- system("CLS");
- break;
- } //koniec swich od menu Plik
- } while (menu != 0);
- break;
- case '2':
- do
- {
- cout<<"Marka: ";
- gets(n);
- if(strlen(n)==0)
- cout<<"Marka nie moze byc pusta."<<endl;
- } while (strlen(n)==0);
- do
- {
- cout<<"Model: ";
- gets(m);
- if(strlen(m)==0)
- cout<<"Model nie moze byc pusty."<<endl;
- }while (strlen(m)==0);
- do
- {
- cout<<"Moc: ";
- cin>>moc;
- if(moc<=0)
- cout<<"Moc musi byc wieksza niz 0"<<endl;
- } while (moc<=0);
- do
- {
- cout<<"Rocznik: ";
- cin>>r;
- if(r<=1950)
- cout<<"Rocznik musi byc wiekszy niz 1950"<<endl;
- } while(r<=1950);
- do
- {
- cout<<"Cena: ";
- cin>>c;
- if(c<=0)
- cout<<"Cena musi byc wieksza niz 0"<<endl;
- } while (c<=0);
- do
- {
- cout<<"Sztuk: ";
- cin>>sz;
- if(sz<0)
- cout<<"Ilosc sztuk musi byc rowna lub wieksza od 0"<<endl;
- } while (sz<0);
- cin.ignore();
- baza.dodajkolejny(n,m,c,moc,r,sz);
- break;
- case '3': baza.drukujcalosc();
- break;
- case '4': baza.wartosci();
- cout<<"Suma wszystkich wartosci= "<<baza.sumawartosc()<<endl;
- break;
- case '5': cout<<"Zapisano do pliku"<<endl;
- baza.saveFile();
- break;
- case '6': cout<<"Wczytano z pliku"<<endl;
- baza.openFile();
- break;
- case '7': baza.deleteCurrent();
- break;
- case '8': baza.showCurrent(50,10);
- break;
- case '9':
- switch(baza.menuEdytuj())
- {
- case '1' : cout<<"Podaj rocznik";
- int rocznik = 2005;
- //baza.setRocznikCurrent(rocznik);
- break;
- }
- break;
- case 'a': baza.next();
- baza.showCurrent(50,10);
- break;
- case 'A': baza.nextFound();
- baza.showCurrentFound(50,10);
- break;
- case 'b': baza.previous();
- baza.showCurrent(50,10);
- break;
- case 'B': baza.previousFound();
- baza.showCurrentFound(50,10);
- break;
- case 'c': cout<<"Podaj numer elementu"<<endl;
- cin>>i;
- baza.setCurrent(i);
- break;
- case 's': cout<<"Podaj cene minimalna: ";
- cin>>min;
- cout<<"Podaj cene maksymalna: ";
- cin>>max;
- if(!baza.searchCena(min, max))
- cout<<"Nic nie znalazlem"<<endl;
- else
- baza.showCurrentFound(50, 10);
- break;
- case 'z': do
- {
- cout<<"Marka: ";
- gets(mark);
- if(strlen(mark)==0)
- cout<<"Marka nie moze byc pusta."<<endl;
- } while (strlen(mark)==0);
- if(!baza.searchMarka(mark))
- cout<<"Nic nie znalazlem"<<endl;
- else
- baza.showCurrentFound(50,10);
- break;
- case 'x': do
- {
- cout<<"Marka: ";
- gets(mark);
- if(strlen(mark)==0)
- cout<<"Marka nie moze byc pusta."<<endl;
- } while (strlen(mark)==0);
- do
- {
- cout<<"Podaj cene minimalna: ";
- cin>>min;
- cout<<"Podaj cene maksymalna: ";
- cin>>max;
- } while(min>max);
- if(!baza.searchMarka(mark) && !baza.searchCena(min, max))
- cout<<"Nic nie znalazlem"<<endl;
- else
- baza.showCurrentFound(50,10);
- break;
- case 'S': cout<<"Podaj numer elementu"<<endl;
- cin>>i;
- baza.showCurrentFound(50, 10);
- break;
- case '0': cout<<"Koniec"<<endl;
- getchar();
- break;
- }
- } while (zn!='0');
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement