#include <iostream>
#include <time.h>
#include <cstdlib>
struct element {
int data;
element* next;
};
struct queue {
element* head;
element* tail;
};
using namespace std;
int generowanie();
queue* makeQueue();
void enqueue(queue*q);
void dequeue(queue*q);
void dequeueAll(queue*&q);
void showFirst(queue* q);
void showAll(queue* q);
int main()
{
int x;
bool br=true;
queue* kolejka=NULL;
do{
cout<<"---------Menu---------"<<endl;
cout<<"1.Tworzenie kolejki"<<endl;
cout<<"2.Dodanie losowego el.do kolejki"<<endl;
cout<<"3.Usuniecie el. z kolejki"<<endl;
cout<<"4.Wyswietlanie pierwszego el. z kolejki"<<endl;
cout<<"5.Wyswietlanie calej bierzacej kolejki"<<endl;
cout<<"6.Usuniecie calej kolejki. Na smierc."<<endl;
cout<<"7.Wyjscie"<<endl;
cout<<"Wybor: ";
cin>>x;
system("cls");
switch(x){
case 1:
if(kolejka!=NULL) delete kolejka;
kolejka= makeQueue();
cout<<"Kolejka zostala utworzona pomyslnie"<<endl;
break;
case 2:
if(kolejka!=NULL) enqueue(kolejka);
else cout<<"Kolejka nie zostala utworzona"<<endl;
break;
case 3:
if(kolejka!=NULL) dequeue(kolejka);
else cout<<"Kolejka nie zostala utworzona"<<endl;
break;
case 4:
if(kolejka!=NULL) showFirst(kolejka);
else cout<<"Kolejka nie zostala utworzona"<<endl;
break;
case 5:
if(kolejka!=NULL) showAll(kolejka);
else cout<<"Kolejka nie zostala utworzona"<<endl;
break;
case 6:
if(kolejka!=NULL) dequeueAll(kolejka);
else cout<<"Brak kolejki do usuniecia"<<endl;
break;
case 7:
br=false;
if(kolejka!=NULL) delete kolejka;
break;
}
cout<<endl;
}while(br==true);
return 0;
}
int generowanie(){
srand(time(NULL));
int liczba=rand()%(10)+1;
return liczba;
}
queue* makeQueue(){
queue* q = new queue;
q->head=NULL;
q->tail=NULL;
return q;
}
void enqueue(queue*q){
element* el=new element;
el->data=generowanie();
cout<<"Dodana liczba to: "<<el->data<<endl;
el->next=NULL;
if(q->tail!=NULL) q->tail->next=el;
else q->head=el;
q->tail=el;
}
void dequeue(queue*q){
if(q->tail!=NULL){
element* temp = q->head;
q->head=q->head->next;
if(q->head==NULL) q->tail=NULL;
cout<<"Usunieta liczba to: "<<temp->data<<endl;
delete temp;
} else cout<<"Kolejka jest pusta"<<endl;
}
void dequeueAll(queue*&q){
while(q->head!=NULL) dequeue(q);
delete q;
q=NULL;
}
void showFirst(queue* q){
if(q->head==NULL) cout<<"Kolejka jest pusta"<<endl;
else cout<<"Pierwszy element w kolejce: "<<q->head->data<<endl;
}
void showAll(queue* q){
if(q->head==NULL) cout<<"Kolejka jest pusta"<<endl;
else{
element* temp = q->head;
cout<<"Kolejka: ";
while(temp!=NULL){
cout<<temp->data<<" ";
temp=temp->next;
}
delete temp;
cout<<endl;
}
}
Replies to Untitled
Title |
Name |
Language |
UNIX |
When |
Re: Untitled |
Mazur Głazur |
text |
1591122323 |
3 Years ago. |
{"html5":"htmlmixed","css":"css","javascript":"javascript","php":"php","python":"python","ruby":"ruby","lua":"text\/x-lua","bash":"text\/x-sh","go":"go","c":"text\/x-csrc","cpp":"text\/x-c++src","diff":"diff","latex":"stex","sql":"sql","xml":"xml","apl":"apl","asterisk":"asterisk","c_loadrunner":"text\/x-csrc","c_mac":"text\/x-csrc","coffeescript":"text\/x-coffeescript","csharp":"text\/x-csharp","d":"d","ecmascript":"javascript","erlang":"erlang","groovy":"text\/x-groovy","haskell":"text\/x-haskell","haxe":"text\/x-haxe","html4strict":"htmlmixed","java":"text\/x-java","java5":"text\/x-java","jquery":"javascript","mirc":"mirc","mysql":"sql","ocaml":"text\/x-ocaml","pascal":"text\/x-pascal","perl":"perl","perl6":"perl","plsql":"sql","properties":"text\/x-properties","q":"text\/x-q","scala":"scala","scheme":"text\/x-scheme","tcl":"text\/x-tcl","vb":"text\/x-vb","verilog":"text\/x-verilog","yaml":"text\/x-yaml","z80":"text\/x-z80"}