A feladat a következő:
Csatolnám a megoldást is nagyvonalakban. Jelen esetben a feladat az lenne, hogy ellenőrizzük, hogy ez a megoldás jó-e teljes mértékben, a másik kérésem, pedig az lenne, amennyiben van valaki, aki a kód bármelyik részét ennél egyszerűbben le tudná programozni, azt a megoldást szívesen megtekinteném. Ui.: Igazából nem volt már türelmem finomgatni formailag, szóval, akinek van kedve azzal szórakozgatni, annak szívesen megköszönném
Kód: #include <iostream> #include <string> #include <ctime> using namespace std;
struct gyartasok { string azon; int dbszam; int ido; int osszido; };
int main() { setlocale(LC_ALL, "HUN"); srand((unsigned int)time(NULL)); gyartasok tmb[12]; string alkaz[8] = { "G24","M90","W31","X21","H01","Z70","B12","V11" }, azonosito; int i, ossz = 0; double atlag = 0;
for (i = 0; i < 12; i++) { tmb[i].azon = alkaz[rand() % 8]; tmb[i].dbszam = rand() % 90 + 11; tmb[i].ido = rand() % 25 + 11; tmb[i].osszido = (tmb[i].dbszam*tmb[i].ido / 60); } cout << "Gyártási adatok" << endl; cout << "gyártás\talk.r\tgy.db\tidő/db\tösszidő" << endl;
for (i = 0; i < 12; i++) { cout << i + 1 << ".\t" << tmb[i].azon << "\t" << tmb[i].dbszam << "\t" << tmb[i].ido << "\t" << tmb[i].osszido << endl; atlag += tmb[i].osszido; } atlag /= 12; cout << endl; cout << "a gyártási idők átlaga: " << atlag << " óra" << endl <<endl; cout << "kérek egy alkatrészt (G24 M90 W31 X21 H01 Z70 B12 V11): "; cin >> azonosito;
for (i = 0; i < 12; i++) { if (tmb[i].azon == azonosito) { ossz += tmb[i].dbszam; } } cout << endl; cout << "összesen " << ossz << " db " << azonosito << " alkatrészt gyártottak" << endl << endl;
cout << "30 óránál hosszabb gyártás " << endl; bool f = false; for (int i = 0; i < 12; i++) { if (tmb[i].osszido > 30) { f = true; cout << i + 1 << " . gyártás " << "\t" << tmb[i].osszido << " óra" << endl; } } if (!f) { cout << "Nem volt 30 óránál hosszabb gyártás!" << endl; } cout << endl; int min = tmb[0].osszido, mini = 0; for (int i = 0; i < 12; i++) { if (tmb[i].osszido < min) { min = tmb[i].osszido; mini = i; } } cout << mini + 1 << ". gyártás volt a legrövidebb, " << tmb[mini].osszido << " óra" << endl;
system("pause"); return 0; } Köszönöm! Üdv.
|