1kolok_OOP

Resenija na zadacite za vezbanje za prv kolokvium OOP postaveni na kursot.
 avatargorazd
Public10 months ago22 Snippets
Search
Language
Sort by
πŸ“… Created Date
Order

20

c_cpp10 months ago
#include <iostream>
#include <cstring>
#include  <iomanip>
using namespace std;

struct Pacient {
    char fullName[100];
    bool insurance;
    int checkups;
};
struct MaticenDoktor {
    char name[100];
    int patients;
    Pacient p[200];
    float price;
};

float suma(MaticenDoktor &m) {
    float sum = 0;
    for (int i = 0; i<m.patients; i++) {
        if (!m.p[i].insurance)
            sum+=m.p[i].checkups*m.price;
    }
    return sum;
}
float pregledi(MaticenDoktor &m) {
    int n = 0;
    for (int i = 0; i<m.patients; i++) n+=m.p[i].checkups;
    return  n;
}

void najuspesen_doktor(MaticenDoktor *m, int n) {
    float maxBread = 0;
    MaticenDoktor goat;
    for (int i = 0; i<n; i++) {
        if (suma(m[i])>maxBread) {
            maxBread = suma(m[i]);
            goat = m[i];
        }
        else if (suma(m[i])==maxBread) {
            if (pregledi(goat)<pregledi(m[i])) {
                goat = m[i];
            }
        }
    }
    cout<<goat.name<<" "<<fixed<<setprecision(2)<<suma(goat)<<" ";
    cout<<fixed<<setprecision(0)<<pregledi(goat)<<endl;
}

int main() {
    int n;
    cin>>n;
    MaticenDoktor doktori[n];
    for (int i = 0; i<n; i++) {
        cin>>doktori[i].name;
        cin>>doktori[i].patients;
        cin>>doktori[i].price;
        for (int j = 0; j < doktori[i].patients; j++) {
            cin>>doktori[i].p[j].fullName>>doktori[i].p[j].insurance>>doktori[i].p[j].checkups;
        }
    }
    najuspesen_doktor(doktori,n);
}

18

c_cpp10 months ago
#include <iostream>
#include <cstring>
#include  <iomanip>
using namespace std;

struct SkiLift {
    char name[15];
    int max;
    bool func;
};
struct SkiCenter {
    char name[20];
    char country[20];
    SkiLift lifts[20];
    int numberOfLifts;
};
void print(SkiCenter &c, int max) {
    cout<<c.name<<endl;
    cout<<c.country<<endl;
    cout<<max;
}
int getCapacity(SkiCenter s) {
    int cap = 0;
    for (int i = 0; i<s.numberOfLifts; i++) {
        if (s.lifts[i].func==1)
            cap+=s.lifts[i].max;
    }
    return cap;
}
void najgolemKapaciteet(SkiCenter *sc, int n) {
    int maxCap = 0;
    SkiCenter goat;
    for (int i = 0; i<n; i++) {
        if (getCapacity(sc[i])>maxCap) {
            maxCap = getCapacity(sc[i]);
            goat = sc[i];
        }else if (getCapacity(sc[i])==maxCap) {
            if (sc[i].numberOfLifts>goat.numberOfLifts) {
                goat = sc[i];
                maxCap = getCapacity(sc[i]);
            }
        }
    }
    print(goat,maxCap);
}

int main() {
    int n;
    cin>>n;
    SkiCenter s[n];
    for (int i = 0; i<n; i++) {
        cin>>s[i].name;
        cin>>s[i].country;
        cin>>s[i].numberOfLifts;
        for (int j = 0; j<s[i].numberOfLifts; j++) {
            cin>>s[i].lifts[j].name;
            cin>>s[i].lifts[j].max;
            cin>>s[i].lifts[j].func;
        }
    }
    najgolemKapaciteet(s,n);
}

22

c_cpp10 months ago
#include <iostream>
#include <cstring>
#include  <iomanip>
using namespace std;

struct Proizvod {
    char code[20];
    int price;
    int stock;
};
struct Narachka {
    char person[15];
    Proizvod proizvodi[10];
    int brPoProizvod[10];
    int n;
};
void bubbleSort(Narachka &n) {
    for (int i = 0; i<n.n;i++) {
        for (int j = 0; j<n.n-1; j++) {
            if (strcmp(n.proizvodi[j].code,n.proizvodi[j+1].code)>0) {
                Proizvod temp = n.proizvodi[j];
                n.proizvodi[j] = n.proizvodi[j+1];
                n.proizvodi[j+1] = temp;

                // int _temp = n.brPoProizvod[j];
                // n.brPoProizvod[j] = n.brPoProizvod[j+1];
                // n.brPoProizvod[j+1] = _temp;
            }
        }
    }
}
void pecatiFaktura(Narachka narachka) {
    cout<<"Faktura za "<<narachka.person<<endl;
    bool canBuyAll = true;
    for (int k = 0; k<narachka.n; k++) {
        if (narachka.brPoProizvod[k]>=narachka.proizvodi[k].stock) {
            canBuyAll = false;
            break;;
        }
    }
    if (!canBuyAll) {
        cout<<"Fakturata ne moze da se izgotvi"<<endl;
    }else {
        bubbleSort(narachka);
        int sum = 0;
        for (int i = 0; i < narachka.n; i++) {
            sum += narachka.proizvodi[i].price*narachka.brPoProizvod[i];
            cout<<narachka.proizvodi[i].code<<" "<<narachka.proizvodi[i].price<<" "<<narachka.brPoProizvod[i]<<" "<<narachka.proizvodi[i].price*narachka.brPoProizvod[i]<<endl;
        }
        cout<<"Vkupnata suma na fakturata e "<<sum<<endl;
    }
}


int main() {
    Narachka narachka;

    cin>>narachka.person;
    cin>>narachka.n;
    int i;
    //Π·Π° сСкој ΠΎΠ΄ Π½Π°Ρ€Π°Ρ‡Π°Π½ΠΈΡ‚Π΅ ΠΏΡ€ΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈ сС внСсуваат ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΠΈ
    for (i = 0; i < narachka.n; ++i) {
        cin>>narachka.proizvodi[i].code;
        cin>>narachka.proizvodi[i].price;
        cin>>narachka.proizvodi[i].stock;

        // внСси код
        // внСси Π΅Π΄ΠΈΠ½ΠΈΡ†Ρ‡Π½Π° Ρ†Π΅Π½Π°
        // внСси Π±Ρ€ΠΎΡ˜ Π½Π° ΠΏΡ€ΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈ Π²ΠΎ ΠΌΠ°Π³Π°Ρ†ΠΈΠ½
    }
    //Π·Π° сСкој ΠΏΡ€ΠΎΠΈΠ·Π²ΠΎΠ΄ сС внСсува ΠΊΠΎΠ»ΠΊΡƒ Ρ‚Π°ΠΊΠ²ΠΈ ΠΏΡ€ΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈ сС ΠΏΠΎΡ€Π°Ρ‡Π°Π½ΠΈ Π²ΠΎ Π½Π°Ρ€Π°Ρ‡ΠΊΠ°Ρ‚Π°
    int j;
    for (j = 0; j < narachka.n; ++j) {
        cin>>narachka.brPoProizvod[j];
    }
    pecatiFaktura(narachka);


    // ΠΏΠΎΠ²ΠΈΠΊ Π½Π° Ρ„ΡƒΠ½ΠΊΡ†ΠΈΡ˜Π°Ρ‚Π° pecatiFaktura


    return 0;
}

21

c_cpp10 months ago
#include <iostream>
#include <cstring>
#include  <iomanip>
using namespace std;

struct Tanc {
    char name[15];
    char origin[15];
};
struct Tancer {
    char name[20];
    char sname[20];
    Tanc tanci[5];
};
void tancuvanje(Tancer *t, int n, const char *zemja) {
    for (int i = 0; i<n; i++) {//individualni tanceri
        for (int j = 0; j<5; j++) {
            if (strcmp(t[i].tanci[j].origin,zemja) == 0) {
                cout<<t[i].name<<" "<<t[i].sname<<", "<<t[i].tanci[j].name<<endl;
                break;
            }
        }
    }
}

int main() {
    int i, j, n;
    char zemja[15];
    Tancer tanceri[5];
    cin >> n;
    for(i = 0; i < n; i++){
        cin >> tanceri[i].name;
        cin >> tanceri[i].sname;
        for(j = 0; j < 3; j++){
            cin >> tanceri[i].tanci[j].name;
            cin >> tanceri[i].tanci[j].origin;
        }
    }
    cin >> zemja;
    tancuvanje(tanceri, n, zemja);
    return 0;
}

16

c_cpp10 months ago
#include <iostream>
#include <cstring>
#include  <iomanip>
using namespace std;
#define NEDELI 4
#define DENOVI 5

struct RabotnaNedela {
    int rabotniChasovi[5];
    int nedela;
};

struct Rabotnik {
    char name[50];
    RabotnaNedela niza[4];
};

int maxNedela(Rabotnik *r) {
    int max = 0;
    int index = 0;
    for (int i = 0; i<4; i++) {
        int cur = 0;
        for (int j = 0; j<5; j++) {
            cur += r->niza[i].rabotniChasovi[j];
        }
        if (cur > max) {
            max = cur;
            index = i;
        }
    }
    return index+1;
}
void table(Rabotnik *r, int n) {
    cout<<"Rab\t";
    for (int i = 0; i<4; i++)
        cout<<i+1<<"\t";
    cout<<"Vkupno"<<endl;
    for (int i = 0; i<n; i++) {//rabotnici
        cout<<r[i].name<<"\t";
        int SUM = 0;
        for (int j = 0; j<NEDELI; j++) {//rabotni denovi
            int sum = 0;
            for (int k = 0; k<DENOVI; k++) {//rabotni nedeli
                sum += r[i].niza[j].rabotniChasovi[k];
            }
            SUM += sum;
            cout<<sum<<"\t";
        }
        cout<<SUM<<endl;
    }
}

int main() {

    int n;
    cin>>n;
    Rabotnik rabotnici[n];
    int i;
    for (i = 0; i < n; ++i) {
        cin>>rabotnici[i].name;
        int j;
        for (j = 0; j < NEDELI; ++j) {
            int k;
            for (k = 0; k < DENOVI; ++k) {
                cin>>rabotnici[i].niza[j].rabotniChasovi[k];
            }

        }
    }
    cout<<"TABLE"<<endl;;
    table(rabotnici, n);
    cout<<"MAX NEDELA NA RABOTNIK: "<<rabotnici[n / 2].name<<endl;
    cout<< maxNedela(&rabotnici[n / 2]);
    return 0;
}
  • Total 22 snippets
  • 1
  • 2
  • 3
  • 4
  • 5