Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #include <string>
- #include <fstream>
- #include <cmath>
- #include <iomanip>
- #include <iostream>
- using namespace std;
- const int CMax=100;
- const int CMax2=10;
- const int CPav=20;
- struct sokiai {
- string pav;
- int t[CMax2];
- int a[CMax2];
- int tech;
- int art;
- int viso;
- };
- const char duomenys[]="duomenys.txt";
- const char rezultatai[]="rezultatai.txt";
- void skaityti (sokiai a[], int & n, int & k, int & m);
- void rikiuoti (sokiai a[], int n, int k, int m);
- int skaiciuoti (int b[], int k);
- void spausdinti (sokiai a[], int n);
- int main()
- {
- int n,k,m; sokiai a[CMax]; int b[CMax];
- skaityti (a,n,k,m);
- rikiuoti (a,n,k,m);
- for (int i=0; i<n; i++)
- {
- a[i].viso=0;
- a[i].tech=skaiciuoti (a[i].t,k);
- a[i].art=skaiciuoti (a[i].a,m);
- a[i].viso=a[i].viso+a[i].tech+a[i].art;
- }
- for (int l=0; l<n-1; l++)
- {
- for (int h=l+1; h<n; h++)
- {
- if (a[l].viso<a[h].viso)
- {
- int sk=a[h].viso;
- a[h].viso=a[l].viso;
- a[l].viso=sk;
- }
- }
- }
- spausdinti (a,n);
- return 0;
- }
- void skaityti (sokiai a[], int & n, int & k, int & m)
- {
- char eil [CPav+1];
- ifstream fd(duomenys);
- fd>>n>>k>>m;
- for (int i=0; i<k; i++)
- {
- fd.ignore (80,'\n');
- fd.get(eil, CPav);
- a[i].pav=eil;
- for (int z=0; z<k; z++)
- {fd>>a[i].t[z];}
- for (int j=0; j<m; j++)
- {fd>>a[i].a[j];}
- }
- fd.close();
- }
- void rikiuoti (sokiai a[], int n, int k, int m)
- {
- for (int z=0; z<n; z++)
- {
- for (int i=0; i<k-1; i++)
- {
- for (int j=i+1; j<k; j++)
- {
- if (a[z].t[i]>a[z].t[j])
- {
- int sk=a[z].t[i];
- a[z].t[i]=a[z].t[j];
- a[z].t[j]=sk;
- }
- }
- }
- }
- for (int z=0; z<n; z++)
- {
- for (int i=0; i<m-1; i++)
- {
- for (int j=i+1; j<m; j++)
- {
- if (a[z].a[i]>a[z].a[j])
- {
- int sk=a[z].a[i];
- a[z].a[i]=a[z].a[j];
- a[z].a[j]=sk;
- }
- }
- }
- }
- }
- int skaiciuoti (int b[], int m)
- {
- int balas=0;
- {
- for (int z=0+1; z<m-1; z++)
- {
- balas=balas+b[z];
- }
- }
- return balas;
- }
- void spausdinti (sokiai a[], int n)
- {
- ofstream fr(rezultatai);
- for (int i=0; i<n; i++)
- fr<<setw(20)<<left<<a[i].pav<<a[i].viso<<endl;
- fr.close();
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement