Informatică, întrebare adresată de MihaiDBR, 8 ani în urmă

Intr-o firma se fac restructurari si mariri de salariu. Pentru ca patronului sa ii fie mai usor va realiza totul cu ajutorului unui program C++. Pentru ca programul sa functioneze trebuie sa se citeasca: numarul m de departamente, codul fiecarui departament, numarul de angajati in fiecare departament, iar pentru fiecare angajat se va citi numarul de ore lucrate peste program, numarul de ore absente, numarul de ore abesnte este trecut cu semnul - si numarul de bonusuri pe care l-a adus firmei. Daca media aritmetica dintre numarul de ore lucrate peste program si numarul de ore absente este pozitiva atunci angajatul ramane in firma altfel este dat afara. Daca media aritmetica aflata anterior este pozitiva si numarul de bonusuri este mai mare de 3 atunci salariul i se va mari cu 25% .
Departamentul 101 : Primul angajat are numarul de ore lucrate peste program de 10, numarul de ore absente -3, iar bonusul este de 4 si salariul de 2500
Departamentul 101 : Al doilea angajat are numarul de ore lucrate peste program de 8, numarul de ore absente -10, iar bonusul este de 1 si salariul de 2500
Departamentul 101 : Al treilea angajat are numarul de ore lucrate peste program de 2, numarul de ore absente -3, iar bonusul este de 4 si salariul de 2500
Departamentul 102 : Primul angajat are numarul de ore lucrate peste program de 5, numarul de ore absente -1, iar bonusul este de 2 si salariul de 1500
Departamentul 102 : Al doilea angajat are numarul de ore lucrate peste program de 3, numarul de ore absente -4, iar bonusul este de 2 si salariul de 1500
Departamentul 102 : Al treilea angajat are numarul de ore lucrate peste program de 4, numarul de ore absente -2, iar bonusul este de 3 si salariul de 1500
Departamentul 103 : Primul angajat are numarul de ore lucrate peste program de 6, numarul de ore absente -1, iar bonusul este de 3 si salariul de 2000
Departamentul 103 : Al doilea angajat are numarul de ore lucrate peste program de 8, numarul de ore absente -3, iar bonusul este de 4 si salariul de 2000
Departamentul 103 : Al treilea angajat are numarul de ore lucrate peste program de 7, numarul de ore absente -2, iar bonusul este de 5 si salariul de 2000
Departamentul 104 : Primul angajat are numarul de ore lucrate peste program de 4, numarul de ore absente -5, iar bonusul este de 1 si salariul de 1900
Departamentul 104 : Al doilea angajat are numarul de ore lucrate peste program de 6, numarul de ore absente -3, iar bonusul este de 2 si salariul de 1900
Departamentul 104 : Al treilea angajat are numarul de ore lucrate peste program de 9, numarul de ore absente -1, iar bonusul este de 3 si salariul de 1900
Departamentul 105 : Primul angajat are numarul de ore lucrate peste program de 3, numarul de ore absente -2, iar bonusul este de 2 si salariul de 3000
Departamentul 105 : Al doilea angajat are numarul de ore lucrate peste program de 7, numarul de ore absente -3, iar bonusul este de 4 si salariul de 3000
Departamentul 105 : Al treilea angajat are numarul de ore lucrate peste program de 5, numarul de ore absente -1, iar bonusul este de 3 si salariul de 3000


mafteion7: ai scris așa de mult ... chiar într-o oră

Răspunsuri la întrebare

Răspuns de amaalia20
0

#include <iostream>

using namespace std;

int main() {

   int m, numAngajati, oreLucrate, oreAbsente, bonusuri;

   string codDepartament;

   double media;

   cout << "Numarul de departamente: ";

   cin >> m;

   for (int i = 0; i < m; i++) {

       cout << "Codul departamentului: ";

       cin >> codDepartament;

       cout << "Numarul de angajati: ";

       cin >> numAngajati;

       for (int j = 0; j < numAngajati; j++) {

           cout << "Ore lucrate peste program: ";

           cin >> oreLucrate;

           cout << "Ore absente: ";

           cin >> oreAbsente;

           cout << "Numarul de bonusuri: ";

           cin >> bonusuri;

           media = (oreLucrate + oreAbsente) / 2.0;

           if (media > 0) {

               if (bonusuri > 3) {

                   cout << "Angajatul ramane in firma si isi va mari salariul cu 25%" << endl;

               } else {

                   cout << "Angajatul ramane in firma" << endl;

               }

           } else {

               cout << "Angajatul va fi dat afara" << endl;

           }

       }

   }

   return 0;

}

Alte întrebări interesante