Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #include <fstream>
- #include <string>
- using std::string;
- using std::ifstream;
- using std::endl;
- using std::ofstream;
- const char Dfailas[] = "Duom.txt";
- const char Rfailas[] = "Rez.txt";
- const int MaxProd = 10; // Maksimalus produktø skaièius
- const int MaxPat = 12; // Maksimalus patiekalø skaièius
- const int MaxPav = 15;
- struct Patiekalas {
- string pav;
- int Prod[MaxProd];
- int k; // patiekalo kaina centais
- };
- void Skaitymas(Patiekalas Pietus[], int& P, int Kainos[], int& N);
- int PatiekaloKaina(Patiekalas Pietus, int N, int Kainos[]);
- int VienuPietuKaina(Patiekalas Pietus[], int P);
- void Spausdinimas(Patiekalas Pietus[], int P, int pKaina);
- int main()
- {
- setlocale(LC_ALL, "Lithuanian");
- Patiekalas Pietus[MaxPat]; // Patiekalø masyvas, kuris sudaro pietus
- int Kainos[MaxProd];
- int N; // Produktø skaièius reikalingas pagaminti visus patiekalus
- int P; // Patiekalø skaièius sudarantis pietus
- int pKaina; // vieno þmogaus pietø kaina
- Skaitymas(Pietus, P, Kainos, N);
- for (int i = 0; i < P; i++)
- Pietus[i].k = PatiekaloKaina(Pietus[i], N, Kainos);
- pKaina = VienuPietuKaina(Pietus, P);
- Spausdinimas(Pietus, P, pKaina);
- return 0;
- }
- void Skaitymas(Patiekalas Pietus[], int& P, int Kainos[], int& N) {
- char eil[MaxPav + 1];
- ifstream fd(Dfailas);
- fd >> N >> P;
- for (int i = 0; i < N; i++) {
- fd >> Kainos[i];
- }
- fd.ignore(80, '\n');
- for (int i = 0; i < P; i++) {
- fd.get(eil, MaxPav);
- Pietus[i].pav = eil;
- for (int j = 0; j < N; j++)
- fd >> Pietus[i].Prod[j];
- fd.ignore(80, '\n');
- }
- fd.close();
- }
- int PatiekaloKaina(Patiekalas Pietus, int N, int Kainos[]) {
- int sum = 0; // Patiekalo kaina
- for (int i = 0; i < N; i++)
- sum += Pietus.Prod[i] * Kainos[i];
- return sum;
- }
- int VienuPietuKaina(Patiekalas Pietus[], int P) {
- int sum = 0;
- for (int i = 0; i < P; i++)
- sum += Pietus[i].k;
- return sum;
- }
- void Spausdinimas(Patiekalas Pietus[], int P, int pKaina) {
- ofstream fr(Rfailas);
- for (int i = 0; i < P; i++)
- fr << Pietus[i].pav << Pietus[i].k << endl;
- fr << pKaina/100 << " " << pKaina%100 << endl;
- fr.close();
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement