kestutis

3 lygis | 3 pamokėlė | Padangų žymėjimas|Užduoties autoriaus

Jan 23rd, 2014
216
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C++ 1.59 KB | None | 0 0
  1. #include <iostream>
  2. #include <fstream>
  3.  
  4. using namespace std;
  5.  
  6. struct padanga {
  7.     int atstumas, aukstis;
  8.     char indeksas, konstrukcija;
  9.     int dydis;
  10.     float kaina;
  11. };
  12. void Skaityti(padanga &viena, padanga D[], int &n);
  13. bool Tinka (padanga ieskoma, padanga turima);
  14. void Skaiciuoti (padanga viena, padanga D[], int n, int &kiekis, float &suma);
  15. void Rasyti (int kiekis, float suma);
  16.  
  17. int main()
  18. {
  19.     padanga viena, Duomenys[500];
  20.     int n, kiekis;
  21.     float suma;
  22.     Skaityti(viena, Duomenys, n);
  23.     Skaiciuoti(viena, Duomenys, n, kiekis, suma);
  24.     Rasyti(kiekis, suma);
  25.     return 0;
  26. }
  27.  
  28. void Skaityti(padanga &viena, padanga D[], int &n)
  29. {
  30.     ifstream df ("duom.txt");
  31.     df >> viena.atstumas >> viena.aukstis >> viena.indeksas >> viena.konstrukcija >> viena.dydis;
  32.     df >> n;
  33.     for (int i=1; i <= n; i++)
  34.         df >> D[i].atstumas >> D[i].aukstis >> D[i].indeksas >> D[i].konstrukcija >> D[i].dydis >> D[i].kaina;
  35.     df.close();
  36. }
  37. bool Tinka (padanga ieskoma, padanga turima)
  38. {
  39.     return (ieskoma.atstumas == turima.atstumas &&
  40.         ieskoma.aukstis == turima.aukstis &&
  41.         ieskoma.indeksas == turima.indeksas &&
  42.         ieskoma.konstrukcija == turima.konstrukcija &&
  43.         ieskoma.dydis == turima.dydis);
  44. }
  45.  
  46. void Skaiciuoti (padanga viena, padanga D[], int n, int &kiekis, float &suma)
  47. {
  48.     kiekis = 0; suma = 0;
  49.     for (int i=1; i <= n; i++)
  50.         if (Tinka (viena, D[i]))
  51.         {
  52.             kiekis++;
  53.             suma += D[i].kaina;
  54.         }
  55. }
  56.  
  57. void Rasyti (int kiekis, float suma)
  58. {
  59.     ofstream rf ("rez.txt");
  60.     rf << "Tinkamų padangų skaičius: " << kiekis <<endl;
  61.     rf << "Jos kainuotų: " << suma << " Lt";
  62.     rf.close();
  63. }
Advertisement
Add Comment
Please, Sign In to add comment