Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #include <iostream>
- using namespace std;
- #include <conio.h>
- #include <string>
- #include <fstream>
- #include <sstream>
- #include <cstdlib>
- //====================================================================================================================
- struct daneOsob
- {
- string dane[7];
- };
- struct daneWojew
- {
- string dane[2];
- };
- struct daneZain
- {
- string dane[3];
- };
- //====================================================================================================================
- int main()
- {
- ifstream dane_k("dane_k.txt");
- string tekstPom;
- int lWyrazow=0,lOsob=0;
- daneOsob osoba[10]; // !! Tu wpisz liczbe osob na liscie
- while(dane_k >> tekstPom)
- {
- osoba[lOsob].dane[lWyrazow%7]=tekstPom;
- lWyrazow++;
- lOsob=lWyrazow/7;
- }
- /*============*/
- /* pkt1 */
- int ileKobiet=0;
- for(int j=0;j<lOsob;j++)
- {
- if(osoba[j].dane[2].at(osoba[j].dane[2].length()-1)=='a') // jezeli masz kompilator zgodny z c++11 to mozesz uzyc funkcji string.back()
- {
- ileKobiet++;
- }
- }
- /*============*/
- /* pkt2 */
- int lUzytkownikow[lOsob];
- string sNazwaSieci[lOsob];
- int j=0;
- bool bylo=false;
- for(int i=0;i<lOsob;i++)
- {
- lUzytkownikow[i]=1;
- for(int k=0;k<lOsob;k++)
- {
- if(osoba[i].dane[4]==sNazwaSieci[k])
- {
- bylo=true;
- }
- }
- if(!bylo)
- {
- sNazwaSieci[j]=osoba[i].dane[4];
- j++;
- }
- bylo=false;
- }
- bool raz=true;
- for(int i=0;i<lOsob;i++)
- {
- for(int k=0;k<i;k++)
- {
- if(osoba[i].dane[4]==osoba[k].dane[4])
- {
- for(int p=0;p<j;p++)
- {
- if(osoba[i].dane[4]==sNazwaSieci[p])
- {
- if(raz)
- {
- lUzytkownikow[p]++;
- raz=false;
- }
- }
- }
- }
- }
- raz=true;
- }
- for(int i=0;i<j;i++)
- {
- cout << "Z sieci " << sNazwaSieci[i] << " kozysta " << lUzytkownikow[i] << " uzytkownikow" << endl;
- }
- /*============*/
- /* pkt3 */
- ifstream wojew("wojew.txt");
- tekstPom="";
- lWyrazow=0;
- int lWoj=0;
- daneWojew wojewodztwo[5]; // !! Tu wpisz liczbe wojewodztw na liscie
- while(wojew >> tekstPom)
- {
- wojewodztwo[lWoj].dane[lWyrazow%2]=tekstPom;
- lWyrazow++;
- lWoj=lWyrazow/2;
- }
- string nazwaWojewodztwa[lWoj];
- int lMieszkancow[lWoj];
- j=0;
- bylo=false;
- for(int i=0;i<lWoj;i++)
- {
- lMieszkancow[i]=0;
- for(int k=0;k<lWoj;k++)
- {
- if(wojewodztwo[i].dane[0]==nazwaWojewodztwa[k])
- {
- bylo=true;
- }
- }
- if(!bylo)
- {
- nazwaWojewodztwa[j]=wojewodztwo[i].dane[0];
- j++;
- }
- bylo=false;
- }
- raz=true;
- for(int i=0;i<lOsob;i++)
- {
- for(int k=0;k<lWoj;k++)
- {
- if(osoba[i].dane[6]==wojewodztwo[k].dane[1])
- {
- for(int p=0;p<lWoj;p++)
- {
- if(wojewodztwo[k].dane[0]==wojewodztwo[p].dane[0])
- {
- if(raz)
- {
- lMieszkancow[p]++;
- raz=false;
- }
- }
- }
- }
- }
- raz=true;
- }
- cout << endl;
- for(int i=0;i<lWoj;i++)
- {
- cout << "W wojewodztwie " << nazwaWojewodztwa[i] << " mieszka " << lMieszkancow[i] << " kandydatow" << endl;
- }
- for(int i=0;i<lWoj;i++)
- {
- if(lMieszkancow[i]>20)
- {
- cout << nazwaWojewodztwa[i] << " - w tym wojewodztwie jest wiecej niz 20 kandydatow" << endl;
- }
- }
- /*============*/
- /* pkt4 */
- ifstream zain_wyk("zain_wyk.txt");
- daneZain zain[lOsob];
- int licznik=0;
- lWyrazow=0;
- while(zain_wyk >> tekstPom)
- {
- zain[licznik].dane[lWyrazow%3]=tekstPom;
- lWyrazow++;
- licznik=lWyrazow/3;
- }
- int ileWyzsze=0;
- int ileSrednie=0;
- cout << endl;
- for(int i=0;i<lOsob;i++)
- {
- if((zain[i].dane[2]=="srednie" || zain[i].dane[2]=="wyzsze") &&
- (atoi(osoba[i].dane[5].c_str())<=50) &&
- (zain[i].dane[1]=="gry_komputerowe"))
- {
- cout << osoba[i].dane[2] << " " << osoba[i].dane[1] << " ";
- for(int k=0;k<lWoj;k++)
- {
- if(osoba[i].dane[6]==wojewodztwo[k].dane[1])
- {
- cout << wojewodztwo[k].dane[0] << endl;
- }
- }
- if(zain[i].dane[2]=="srednie")
- {
- ileSrednie++;
- }
- else if(zain[i].dane[2]=="wyzsze")
- {
- ileWyzsze++;
- }
- }
- }
- cout << endl << "W tej grupie jest " << endl << ileSrednie << " osob z srednim wyksztalceniem i " << endl << ileWyzsze << " osob z wyzszym wyksztalceniem" << endl;
- /*============*/
- /* pkt5 */
- int lKobiet=0;
- int lMezczyzn=0;
- for(int i=0;i<lOsob;i++)
- {
- if(zain[i].dane[1]=="polityka" || zain[i].dane[1]=="sport")
- {
- if(osoba[i].dane[2].at(osoba[i].dane[2].length()-1)=='a') // jezeli masz kompilator zgodny z c++11 to mozesz uzyc funkcji string.back()
- {
- if(atoi(osoba[i].dane[3].c_str())>=168)
- {
- lKobiet++;
- }
- }
- else
- {
- if(atoi(osoba[i].dane[3].c_str())>=175)
- {
- lMezczyzn++;
- }
- }
- }
- }
- cout << endl << "Kryteria spelnia :" << endl << lKobiet << " kobiet i" << endl << lMezczyzn << " mezczyzn" << endl;
- /*============*/
- zain_wyk.close();
- wojew.close();
- dane_k.close();
- getch();
- return 0;
- }
- //====================================================================================================================
- //*****************************************************************************
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement