Advertisement
Josif_tepe

Untitled

Dec 7th, 2024
42
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C++ 3.29 KB | None | 0 0
  1. #include <iostream>
  2. using namespace std;
  3. const int max_size = 1000;
  4. struct covek
  5. {
  6.     string ime;
  7.     int embr;
  8.     bool rezultat;
  9.     bool testiranjeSer;
  10.     bool testiranjePCR;
  11. };
  12. struct Queue {
  13.     covek niza[max_size];
  14.     int front, rear;
  15.    
  16.     void init() {
  17.         front = 0;
  18.         rear = -1;
  19.     }
  20.    
  21.     bool isEmpty() {
  22.         if(rear == -1) {
  23.             return true;
  24.         }
  25.         else {
  26.             return false;
  27.         }
  28.     }
  29.     bool isFull() {
  30.         if(rear == max_size - 1) {
  31.             return true;
  32.         }
  33.         else {
  34.             return false;
  35.         }
  36.     }
  37.    
  38.     void push(covek element) {
  39.         if(isFull()) {
  40.             cout << "Redot e poln" << endl;
  41.             return;
  42.         }
  43.         rear++;
  44.         niza[rear] = element;
  45.     }
  46.     void pop() {
  47.         if(isEmpty()) {
  48.             cout << "Nema elementi vo redot" << endl;
  49.             return;
  50.         }
  51.         for(int i = front; i < rear; i++) {
  52.             niza[i] = niza[i + 1];
  53.         }
  54.         rear--;
  55.     }
  56.     covek peek() {
  57.         if(isEmpty()) {
  58.             cout << "Prazen red" << endl;
  59.             exit(0);
  60.         }
  61.         return niza[front];
  62.     }
  63.    
  64. };
  65.  
  66. void raspredeli_usluzi(Queue & lugje, Queue & rezultati, Queue & za_testiranjeSer, Queue & za_testiranjePcr) {
  67.    
  68.     while(!lugje.isEmpty()) {
  69.         covek c = lugje.peek();
  70.         lugje.pop();
  71.        
  72.         if(c.rezultat) {
  73.             rezultati.push(c);
  74.         }
  75.         else if(c.testiranjeSer) {
  76.             za_testiranjeSer.push(c);
  77.         }
  78.         else if(c.testiranjePCR) {
  79.             za_testiranjePcr.push(c);
  80.         }
  81.     }
  82.     cout << "Rezultati cekaat" << endl;
  83.     while(!rezultati.isEmpty()) {
  84.         covek c = rezultati.peek();
  85.         rezultati.pop();
  86.        
  87.         cout << c.ime << " " << c.embr << endl;
  88.        
  89.         if(c.testiranjeSer) {
  90.             za_testiranjeSer.push(c);
  91.         }
  92.         else if(c.testiranjePCR) {
  93.             za_testiranjePcr.push(c);
  94.         }
  95.     }
  96.    
  97.     cout << "Za serolosko testiranje" << endl;
  98.     while(!za_testiranjeSer.isEmpty()) {
  99.         covek c = za_testiranjeSer.peek();
  100.         za_testiranjeSer.pop();
  101.        
  102.         cout << c.ime << " " << c.embr << endl;
  103.         if(c.testiranjePCR) {
  104.             za_testiranjePcr.push(c);
  105.         }
  106.        
  107.     }
  108.     cout << "Za pcr testiranje" << endl;
  109.     while(!za_testiranjePcr.isEmpty()) {
  110.         covek c = za_testiranjePcr.peek();
  111.         za_testiranjePcr.pop();
  112.        
  113.         cout << c.ime << " " << c.embr << endl;
  114.     }
  115.    
  116. }
  117. int main()
  118. {
  119.    
  120.    
  121.    
  122.     Queue lugje, za_testiranjeSer, za_testiranjePCR, za_rezultati;
  123.     covek pomoshen;
  124.     char c;
  125.     int i=1;
  126.     lugje.init();
  127.     za_rezultati.init();
  128.     za_testiranjeSer.init();
  129.     za_testiranjePCR.init();
  130.     while(1)
  131.     {
  132.     cout<<"Vnesete podatoci za covek "<<i<<endl;
  133.     cin>>pomoshen.ime>>pomoshen.embr>>pomoshen.rezultat>>pomoshen. testiranjeSer>>pomoshen.testiranjePCR;
  134.     lugje.push(pomoshen);
  135.     cout<<endl;
  136.     cout<<"Vnesete . za kraj na vnesuvanjeto"<<endl; cin>>c;
  137.     if(c == '.')
  138.         break;
  139.         i++;
  140.     }
  141.     raspredeli_usluzi(lugje, za_rezultati, za_testiranjeSer, za_testiranjePCR);
  142.     cout<<endl;
  143.     return 0;
  144.  
  145. }
  146.  
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement