Advertisement
Guest User

prototyp quizov

a guest
Aug 24th, 2016
68
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C++ 2.34 KB | None | 0 0
  1. #include <iostream>
  2. #include <cstring>
  3. #include <fstream>
  4. #include <string>
  5. #include <cstdlib>
  6. #include <algorithm>
  7. using namespace std;
  8.  
  9. struct xd{
  10.     string pytanie;
  11.     string odpA;
  12.     string odpB;
  13.     string odpC;
  14.     string odpD;
  15.     char pravidlova;
  16. };
  17.  
  18. int main(){
  19.    
  20.    
  21.     fstream foxy;
  22.     foxy.open("klizdlaciebie.txt",ios::out);
  23.     string k;
  24.     int i;
  25.     cout<<"Podaj ilosc pytan jaka ma znajdovac sie v quizie: ";
  26.     cin>>i;
  27.    
  28.        
  29.     xd *kot = new xd[i];
  30.     for(int j=0;j<i;j++){
  31.         getline(cin,k) ; /* svego rodzaju bufor dla int i bo by pobralo jeszcze raz nvm czemu*/
  32.     cout<<"Podaj pytanie: " <<j+1<<endl;
  33.     getline(cin,kot[j].pytanie);
  34.     foxy<<kot[j].pytanie<<endl;
  35.    
  36.     cout<<"Podaj odpoviedz A "<<endl;
  37.     getline(cin,kot[j].odpA);
  38.     foxy<<"A "<<kot[j].odpA<<endl;
  39.    
  40.     cout<<"Podaj odpoviedz B "<<endl;
  41.     getline(cin,kot[j].odpB);
  42.     foxy<<"B "<<kot[j].odpB<<endl;
  43.    
  44.     cout<<"Podaj odpoviedz C "<<endl;
  45.     getline(cin,kot[j].odpC);
  46.     foxy<<"C "<<kot[j].odpC<<endl;
  47.    
  48.     cout<<"Podaj odpoviedz D "<<endl;
  49.     getline(cin,kot[j].odpD);
  50.     foxy<<"D "<<kot[j].odpD<<endl;
  51.    
  52.     cout<<"Podaj pravidlova odpoviedz  "<<endl;
  53.     cin>>kot[j].pravidlova;
  54.     foxy<<kot[j].pravidlova<<endl; 
  55.     }
  56.    
  57.    
  58.    
  59. delete [] kot;
  60. foxy.close();
  61.    
  62.     foxy.open("klizdlaciebie.txt",ios::in);
  63.     if(foxy.good()==false){
  64.         cout<<"Plik nie istnieje";
  65.         exit(0);
  66.     }
  67.    
  68.    
  69.     int nr_pytania=0;
  70.     int nr_linii=1;
  71.     string linia;
  72.     string pytanie[nr_pytania];
  73.     string odpA[i];
  74.     string odpB[i];
  75.     string odpC[i];
  76.     string odpD[i];
  77.     string pravidlova[i];
  78.     string odp;
  79.     int punkty=0;
  80.    
  81.     while(getline(foxy,linia))
  82.     {
  83.         switch(nr_linii){
  84.             case 1:pytanie[nr_pytania]=linia;break;
  85.             case 2:odpA[nr_pytania]=linia;break;
  86.             case 3:odpB[nr_pytania]=linia;break;
  87.             case 4:odpC[nr_pytania]=linia;break;
  88.             case 5:odpD[nr_pytania]=linia;break;
  89.             case 6:pravidlova[nr_pytania]=linia;break;
  90.         }
  91.         nr_linii++;
  92.          
  93.          if(nr_linii=6){nr_linii==1,nr_pytania++;}
  94.        
  95.     }
  96.     foxy.close();
  97.    
  98.     for(int q;q<i;q++){
  99.     cout<<odpA[i]<<endl;
  100.     cout<<odpB[i]<<endl;
  101.     cout<<odpC[i]<<endl;
  102.     cout<<odpD[i]<<endl;
  103.    
  104.     cout<<"Jaka jest tvoja odpoviedz ? "<<endl;
  105.     cin>>odp;
  106.     transform(odp.begin(),odp.end(),odp.begin(),::tolower);
  107.     if(odp==pravidlova[i])
  108. {
  109.     punkty++;} 
  110.             else cout<"Bledna odpoviedz nie ma pkt";
  111.     }
  112.    
  113.    
  114.     cout<<"Zdobyles "<<punkty<<" punktov";
  115.    
  116.    
  117.    
  118.    
  119.    
  120.     return 0;
  121. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement