Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- //1.txt
- /*
- 1 6
- 2 8
- 3 5
- 4 3
- 5 5
- 6 8
- 7 6
- 8 3
- 9 5
- 10 1
- 8 6 2
- 1 10
- */
- #include <iostream>
- #include <iomanip>
- #include <fstream>
- using namespace std;
- const char duomF[] = "1.txt";
- const char rezF[] = "1rez.txt";
- const int CMax = 15;
- struct skaiciai {
- string vardas;
- int skaicius[50];
- };
- void skaitymas(skaiciai A[], int &n, int &k)
- {
- ifstream df(duomF);
- char eil[CMax+1];
- df >> n >> k;
- for (int i = 0; i < n; i++)
- {
- df.ignore(80, '\n');
- df.get(eil, CMax);
- A[i].vardas = eil;
- for (int j = 0; j < k; j++)
- {
- df >> A[i].skaicius[j];
- }
- }
- }
- void kiek(skaiciai A[], int kiekis[], int n, int k)
- {
- int counter = 0;
- for (int z = 1; z < 11; z++)
- {
- for (int i = 0; i < n; i++)
- {
- for (int j = 0; j < k; j++)
- {
- if (A[i].skaicius[j] == z)
- {
- counter ++;
- }
- }
- }
- kiekis[z] = counter;
- counter = 0;
- }
- }
- void daugiausia(int kiekis[], int didziausi[], int &max)
- {
- for (int i = 1; i < 11; i++)
- {
- didziausi[i] = 0;
- if (kiekis[i] > max)
- {
- max = kiekis[i];
- }
- }
- for (int i = 1; i < 11; i++)
- {
- if (kiekis[i] == max)
- {
- didziausi[i] = kiekis[i];
- }
- }
- }
- void maziausia(int kiekis[], int maziausi[], int &min)
- {
- for (int i = 1; i < 11; i++)
- {
- maziausi[i] = 0;
- if (kiekis[i] < min)
- {
- min = kiekis[i];
- }
- }
- for (int i = 10; i > 0; i--)
- {
- if (kiekis[i] == min)
- {
- maziausi[i] = kiekis[i];
- }
- }
- }
- void rezultatas(int kiekis[], int didziausi[], int maziausi[], int max, int min)
- {
- ofstream rf(rezF);
- for (int i = 1; i < 11; i++)
- {
- cout << i << " " << kiekis[i] << endl;
- rf << i << " " << kiekis[i] << endl;
- }
- rf << max;
- for (int i = 10; i > 0; i--)
- {
- if (didziausi[i] != 0)
- {
- rf << " " << i;
- }
- }
- rf << endl << min;
- for (int i = 1; i < 11; i++)
- {
- if (maziausi[i] != 0)
- {
- rf << " " << i;
- }
- }
- rf.close();
- }
- int main()
- {
- skaiciai A[CMax];
- int kiekis[11], didziausi[11], maziausi[11];
- int max = 0, min = 999;
- int n, k;
- skaitymas(A, n, k);
- kiek(A, kiekis, n, k);
- daugiausia(kiekis, didziausi, max);
- maziausia(kiekis, maziausi, min);
- rezultatas(kiekis, didziausi, maziausi, max, min);
- return 0;
- }
Advertisement
Add Comment
Please, Sign In to add comment