Advertisement
Josif_tepe

Untitled

Nov 26th, 2023
546
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C++ 2.24 KB | None | 0 0
  1. #include <iostream>
  2.  
  3.  
  4. using namespace std;
  5.  
  6. class WebPage {
  7. private:
  8.     string url;
  9.     string sodrzhina;
  10.    
  11. public:
  12.     WebPage() {}
  13.     WebPage(string _url, string _sodrzina) {
  14.         url = _url;
  15.         sodrzhina = _sodrzina;
  16.     }
  17.    
  18.     bool daliSeIsti(WebPage p) {
  19.         if(url == p.url) {
  20.             return true;
  21.         }
  22.         else {
  23.             return false;
  24.         }
  25.     }
  26.     void print() {
  27.         cout << url << endl;
  28.     }
  29. };
  30.  
  31. class WebServer {
  32. private:
  33.     string ime;
  34.     WebPage * niza;
  35.     int n;
  36. public:
  37.     WebServer() {
  38.         n = 0;
  39.     }
  40.     WebServer(string _ime) {
  41.         ime = _ime;
  42.         n = 0;
  43.        
  44.     }
  45.    
  46.     void addPage(WebPage p) {
  47.         bool dali_postoi = false;
  48.         for(int i = 0; i < n; i++) {
  49.             if(niza[i].daliSeIsti(p)) {
  50.                 dali_postoi = true;
  51.             }
  52.         }
  53.        
  54.         if(dali_postoi == false) { // isto kako !dali_postoi
  55.             WebPage tmp_niza[n + 1];
  56.             for(int i = 0; i < n; i++) {
  57.                 tmp_niza[i] = niza[i];
  58.             }
  59.             tmp_niza[n] = p;
  60.            
  61.             n++;
  62.             niza = new WebPage[n];
  63.             for(int i = 0; i < n; i++) {
  64.                 niza[i] = tmp_niza[i];
  65.             }
  66.         }
  67.        
  68.     }
  69.     void deletePage(WebPage p) {
  70.         WebPage tmp_niza[n];
  71.         int j = 0;
  72.        
  73.         for(int i = 0; i < n; i++) {
  74.             if(niza[i].daliSeIsti(p) == false) {
  75.                 tmp_niza[j] = niza[i];
  76.                 j++;
  77.             }
  78.         }
  79.         n = j;
  80.         niza = new WebPage[n];
  81.         for(int i = 0; i < n; i++) {
  82.             niza[i] = tmp_niza[i];
  83.         }
  84.     }
  85.    
  86.     void listPages() {
  87.         for(int i = 0; i < n; i++) {
  88.             niza[i].print();
  89.         }
  90.     }
  91. };
  92. int main()
  93. {
  94.     WebPage wp1 ("http://www.google.com", "The search engine");
  95.     WebPage wp2 ("http://www.finki.ukim.mk", "FINKI");
  96.     WebPage wp3 ("http://www.time.mk", "Site vesti");
  97.     WebServer ws(" Server ");
  98.     ws.addPage(wp1) ;
  99.     ws.addPage(wp2);
  100.     ws.addPage(wp3) ;
  101.     ws.listPages ();
  102.     cout << "\nAfter delete: \n";
  103.     ws.deletePage(wp3);
  104.     ws.listPages ();
  105.    
  106.     return 0;
  107. }
  108.  
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement