xTheEc0

3. Varžtai ir veržlės. (Vad 73psl.)

Jan 12th, 2015
559
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C++ 1.24 KB | None | 0 0
  1. /*
  2. 8
  3. 8 4 2 8 10 5 4 5
  4. 10
  5. 2 2 2 5 5 4 4 4 2 4
  6. */
  7.  
  8. #include <iostream>
  9. #include <fstream>
  10. using namespace std;
  11. const char duomF[] = "1.txt";
  12. const char rezF[] = "rez1.txt";
  13. const int CMax = 101;
  14.  
  15. struct varztai
  16. {
  17.     int varztas; // Varztu skersmenys
  18.     int verzle; // Verzliu skersmenys
  19. };
  20.  
  21. void skaitymas(varztai A[], int &n, int &m)
  22. {
  23.     ifstream df(duomF);
  24.     int temp;
  25.  
  26.     df >> n;
  27.     for (int i = 0; i < n; i++) {df >> temp; A[temp].varztas++;}
  28.  
  29.     df >> m;
  30.     for (int i = 0; i < m; i++) {df >> temp; A[temp].verzle++;}
  31.  
  32.     df.close();
  33. }
  34.  
  35. void reset(varztai A[])
  36. {
  37.     for (int i = 0; i < 101; i++) {A[i].varztas = 0; A[i].verzle = 0;}
  38. }
  39.  
  40. void skaiciavimai(varztai A[], int n, int m)
  41. {
  42.     ofstream rf(rezF);
  43.  
  44.     rf << "Reikalingi varztai: " << endl;
  45.     for (int i = 0; i < 101; i++) {if(A[i].verzle > A[i].varztas) rf << A[i].verzle - A[i].varztas << " " << i << endl;}
  46.     rf << "Reikalingos varzles: " << endl;
  47.     for (int i = 0; i < 101; i++) {if(A[i].varztas > A[i].verzle) rf << A[i].varztas - A[i].verzle << " " << i << endl;}
  48.  
  49.     rf.close();
  50. }
  51.  
  52. int main ()
  53. {
  54.     varztai A[CMax];
  55.     int n; int m;
  56.  
  57.     reset(A);
  58.     skaitymas(A, n, m);
  59.     skaiciavimai(A, n, m);
  60.  
  61.     return 0;
  62. }
Advertisement
Add Comment
Please, Sign In to add comment