Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #include <iostream>
- #include <fstream>
- #include <algorithm>
- using namespace std;
- int n = 0;
- struct kalbos{
- string p;
- int sen = 0;
- int dab = 0;
- double skirtumas = 0;
- int did = 0;
- int didX = 0;
- int darDid = 0;
- int darDidX = 0;
- int visodid = 0;
- int maz = 0;
- int mazX = 0;
- int darMaz = 0;
- int darMazX = 0;
- int visomaz = 0;
- };
- kalbos m[100];
- void skaitymas(int &n, kalbos m[]);
- void skaiciavimas(int n, kalbos m[]);
- void skaiciavimas2(int n, kalbos m[]);
- void spausdinimas(int n, kalbos m[]);
- int main()
- {
- skaitymas(n, m);
- skaiciavimas(n, m);
- skaiciavimas2(n, m);
- spausdinimas(n, m);
- }
- void skaitymas(int &n, kalbos m[])
- {
- char x[25];
- ifstream d("duom.txt");
- d >> n;
- d.ignore();
- for(int i = 0; i < n; i++)
- {
- d.get(x,25);
- m[i].p = x;
- d >> m[i].dab >> m[i].sen;
- d.ignore();
- }
- d.ignore();
- d.close();
- }
- void skaiciavimas(int n, kalbos m[])
- {
- for(int i = 0; i < n; i++)
- {
- m[i].skirtumas = m[i].sen - m[i].dab;
- cout << m[i].skirtumas << endl;
- }
- }
- void skaiciavimas2(int n, kalbos m[])
- {
- for(int i = 0; i < n; i++)
- {
- if(m[i].skirtumas > m[0].did)
- {
- m[0].did = m[i].skirtumas;
- m[0].didX = i;
- }
- }
- for(int i = 0; i < n; i++)
- {
- if(m[i].skirtumas == m[0].did && m[0].didX != i)
- {
- m[0].darDid++;
- }
- }
- for(int i = 0; i < n; i++)
- {
- if(m[0].did == m[i].skirtumas && m[0].didX != i)
- {
- for(int j = 0; j < m[0].darDid; j++)
- {
- m[j].darDidX = i;
- }
- }
- }
- m[0].visodid = m[0].didX;
- if(m[0].darDid > 0)
- {
- for(int i = 0; i < m[0].darDid; i++)
- {
- m[i].visodid = m[i].darDidX;
- }
- }
- /// maziausiu paieska ///
- m[0].maz = m[0].skirtumas;
- for(int i = 0; i < n; i++)
- {
- if(m[i].skirtumas < m[0].maz)
- {
- m[0].maz = m[i].skirtumas;
- m[0].mazX = i;
- }
- }
- for(int i = 0; i < n; i++)
- {
- if(m[i].skirtumas == m[0].maz && m[0].mazX != i)
- {
- m[0].darMaz++;
- }
- }
- for(int i = 0; i < n; i++)
- {
- if(m[0].maz == m[i].skirtumas && m[0].mazX != i)
- {
- for(int j = 0; j < m[0].darMaz; j++)
- {
- m[j].darMazX = i;
- }
- }
- }
- m[0].visodid = m[0].mazX;
- if(m[0].darMaz > 0)
- {
- for(int i = 0; i < m[0].darMaz; i++)
- {
- m[i].visomaz = m[i].darMazX;
- }
- }
- }
- void spausdinimas(int n, kalbos m[])
- {
- ofstream r("rez.txt");
- cout << m[0].did << endl;
- for(int i = 0; i < m[0].darDid+1; i++)
- {
- cout << m[ m[i].visodid ].p << endl;
- }
- cout << m[0].maz << endl;
- r.close();
- }
Advertisement
Add Comment
Please, Sign In to add comment