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.