Advertisement
Josif_tepe

Untitled

Apr 28th, 2021
141
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C++ 4.08 KB | None | 0 0
  1. #include <iostream>
  2. using namespace std;
  3.  
  4. struct Proizvod {
  5.     char ime[30];
  6.     char tip[10];
  7.     int cena;
  8.     double golemina; // float
  9.     char zemja_na_poteklo[20];
  10.     int mesec, godina;
  11.    
  12.     int voRok(int m, int g) {
  13.         if(godina < g) {
  14.             return true;
  15.         }
  16.         if(godina > g) {
  17.             return false;
  18.         }
  19.         if(godina == g) {
  20.             if(mesec < m) {
  21.                 return true;
  22.             }
  23.         }
  24.         return false;
  25.     }
  26.    
  27.     void prodadi() {
  28.         cena = 0;
  29.     }
  30. };
  31.  
  32. class Shoping {
  33.     char ime_na_centar[30];
  34.     char adresa[15];
  35.     Proizvod proizvodi[100];
  36.     int kolku_proizvodi;
  37.     int novi_ceni[100];
  38.    
  39. public:
  40.     Shoping() {} // default/empty constructor
  41.    
  42.     Shoping(char* _ime_na_centar, char* _adresa, Proizvod* _proizvodi, int _kolku_proizvodi, int* _novi_ceni) { // parametarski konstruktor
  43.        
  44.         strcpy(ime_na_centar, _ime_na_centar);
  45.         strcpy(adresa, _adresa);
  46.         kolku_proizvodi = _kolku_proizvodi;
  47.        
  48.         for(int i = 0; i < kolku_proizvodi; i++) {
  49.             proizvodi[i] = _proizvodi[i];
  50.             novi_ceni[i] = _novi_ceni[i];
  51.         }
  52.     }
  53.    
  54.     Shoping(const Shoping &tmp) {
  55.         strcpy(ime_na_centar, tmp.ime_na_centar);
  56.         strcpy(adresa, tmp.adresa);
  57.         kolku_proizvodi = tmp.kolku_proizvodi;
  58.        
  59.         for(int i = 0; i < kolku_proizvodi; i++) {
  60.             proizvodi[i] = tmp.proizvodi[i];
  61.             novi_ceni[i] = tmp.novi_ceni[i];
  62.         }
  63.     }
  64.    
  65.     void set_ime_na_centar(char *c) {
  66.         strcpy(ime_na_centar, c);
  67.     }
  68.  
  69.     void set_tip(char *c) {
  70.         strcpy(adresa, c);
  71.     }
  72.     void set_proizvodi(Proizvod *p, int n) {
  73.         kolku_proizvodi = n;
  74.         for(int i = 0; i < kolku_proizvodi; i++) {
  75.             proizvodi[i] = p[i];
  76.         }
  77.     }
  78.     void set_kolku_proizvodi(int n) {
  79.         kolku_proizvodi = n;
  80.     }
  81.     void set_novi_ceni(int *niza, int n) {
  82.         kolku_proizvodi = n;
  83.         for(int i = 0; i < n; i++) {
  84.             novi_ceni[i] = niza[i];
  85.         }
  86.     }
  87.    
  88.     const char* get_ime_na_centar() {
  89.         return ime_na_centar;
  90.     }
  91.    
  92.     const char* get_adresa() {
  93.         return adresa;
  94.     }
  95.    
  96.     const Proizvod* get_proizvodi() {
  97.         return proizvodi;
  98.     }
  99.     int get_kolku_proizvodi() {
  100.         return kolku_proizvodi;
  101.     }
  102.     const int* get_novi_ceni() {
  103.         return novi_ceni;
  104.     }
  105.    
  106.     int proverka(int m, int g) {
  107.         int brojac = 0;
  108.         for(int i = 0; i < kolku_proizvodi; i++) {
  109.             if(proizvodi[i].voRok(m, g)) {
  110.                
  111.             }
  112.             else {
  113.                 proizvodi[i].prodadi();
  114.                 novi_ceni[i] = 0;
  115.                 brojac++;
  116.             }
  117.         }
  118.         return brojac;
  119.     }
  120.    
  121.     double getNeto(char *c) {
  122.         double sum = 0.0;
  123.         if(strcmp(c, "") == 0) {
  124.             for(int i = 0; i  < kolku_proizvodi; i++) {
  125.                 sum += proizvodi[i].golemina;
  126.             }
  127.         }
  128.         else {
  129.             for(int i = 0; i < kolku_proizvodi; i++) {
  130.                 if(strcmp(c, proizvodi[i].tip) == 0) {
  131.                     sum += proizvodi[i].golemina;
  132.                 }
  133.             }
  134.         }
  135.         return sum;
  136.     }
  137.    
  138.     ~Shoping() {} // destruktor
  139. };
  140.  
  141. int main() {
  142.     int n; // kolku proizvodi ke vneseme
  143.     cin >> n;
  144.     Proizvod proizvodi[n];
  145.     for(int i = 0; i < n; i++) {
  146.         cin >> proizvodi[i].ime >> proizvodi[i].tip >> proizvodi[i].cena >> proizvodi[i].golemina >> proizvodi[i].zemja_na_poteklo >> proizvodi[i].mesec >> proizvodi[i].godina;
  147.     }
  148.     char ime_na_centar[30];
  149.     cin >> ime_na_centar;
  150.     char adresa[15];
  151.     cin >> adresa;
  152.     int novi_ceni[n];
  153.     for(int i = 0; i < n; i++) {
  154.         cin >> novi_ceni[i];
  155.     }
  156.    
  157.     Shoping s(ime_na_centar, adresa, proizvodi, n, novi_ceni);
  158.     int razlika = 0;
  159.     for(int i = 0; i < n; i++) {
  160.         razlika += (proizvodi[i].cena - novi_ceni[i]);
  161.     }
  162.     cout << razlika << endl;
  163.     return 0;
  164. }
  165.  
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement