Test Wyboru CASE

Test Wyboru CASE
L6
  • Rejestracja:około 15 lat
  • Ostatnio:około 7 lat
0

Mam napisany program test wyboru
MAM PROBLEM Z:

  • liczeniem punktów (1 punkt za poprawna odpowiedz)
  • i nie wiem czy mam dobrze zainicjowane tablice ta z wynikami moimi i poprawnymi wynikami
Kopiuj
//Program kalkulator
#include<iostream>
#include<conio.h>

using namespace std;
int main()
{
int n,i;
int odp[5];
int pop[2];
int ocena,li,punkty;

//Pytanie 1
{
 cout<<"Pyt.1 PIerwszy komputer nazywa sie"<<endl; 

                       cout<<"1. Enigma"<<endl;
                       cout<<"2. Acer"<<endl;
                       cout<<"3. Asus"<<endl;
                       cout<<"4. Pecet"<<endl;
                        
                       cin>>n;
                 cout<<endl;
                                      odp[1]=n;                     
             switch(n)
              {
                   case 1:
                      cout<<"1. Enigma"<<endl ;break;
                   case 2:
                      cout<<"2. Acer"<<endl;break; 
                    case 3:   
                      cout<<"3. Asus"<<endl;break;
                    case 4:
                      cout<<"4. Pecet"<<endl;break;
                       cout<<endl;
                      
              }      
}//Koniec pytania 1

//Pytanie 2
{

           cout<<"Pyt.2 Skrot nazwy HP pochodzi od"<<endl; 

                       cout<<"1. Henz&Packer');"<<endl;
                       cout<<"2. haroln pank"<<endl;
                       cout<<"3. Hewwelett-Packer');"<<endl;
                       cout<<"4. himba pis"<<endl;
                        
                       cin>>n;
           cout<<endl;
                                      odp[2]=n;                   
             switch(n)
              {
                   case 1:
                      cout<<"1. Henz&Packer"<<endl ;break;
                   case 2:
                      cout<<"2. haroln pank"<<endl;break; 
                    case 3:   
                      cout<<"3. Hewwelett-Packer"<<endl;break;
                    case 4:
                      cout<<"4. himba pis"<<endl;break;
                      cout<<endl;
              }                                
}//Koniec Pytania 2  

//Pytanie 3
{
     
           cout<<"Pyt.3 Skrot nazwy HP pochodzi od"<<endl; 

                       cout<<"1. Henz&Packer');"<<endl;
                       cout<<"2. haroln pank"<<endl;
                       cout<<"3. Hewwelett-Packer');"<<endl;
                       cout<<"4. himba pis"<<endl;
                        
                       cin>>n;
        cout<<endl;
                                      odp[3]=n;                   
             switch(n)
              {
                   case 1:
                      cout<<"1. Henz&Packer"<<endl ;break;
                   case 2:
                      cout<<"2. haroln pank"<<endl;break; 
                    case 3:   
                      cout<<"3. Hewwelett-Packer"<<endl;break;
                    case 4:
                      cout<<"4. himba pis"<<endl;break;
                      cout<<endl;
              } 
//kONIEC PYTANIA 3  

//Pytanie 4
{
         
           cout<<"Pyt.4 Skrot nazwy HP pochodzi od"<<endl; 

                       cout<<"1. Henz&Packer');"<<endl;
                       cout<<"2. haroln pank"<<endl;
                       cout<<"3. Hewwelett-Packer');"<<endl;
                       cout<<"4. himba pis"<<endl;
                        
                       cin>>n;
                     cout<<endl;
                                      odp[4]=n;                   
             switch(n)
              {
                   case 1:
                      cout<<"1. Henz&Packer"<<endl ;break;
                   case 2:
                      cout<<"2. haroln pank"<<endl;break; 
                    case 3:   
                      cout<<"3. Hewwelett-Packer"<<endl;break;
                    case 4:
                      cout<<"4. himba pis"<<endl;break;
                      cout<<endl;
              }                                
}//Koniec Pytania 4

//Pytanie 5
{
        
           cout<<"Pyt.5 Skrot nazwy HP pochodzi od"<<endl; 

                       cout<<"1. Henz&Packer');"<<endl;
                       cout<<"2. haroln pank"<<endl;
                       cout<<"3. Hewwelett-Packer');"<<endl;
                       cout<<"4. himba pis"<<endl;
                        
                       cin>>n;
                      cout<<endl;
                                      odp[5]=n;                   
             switch(n)
              {
                   case 1:
                      cout<<"1. Henz&Packer"<<endl ;break;
                   case 2:
                      cout<<"2. haroln pank"<<endl;break; 
                    case 3:   
                      cout<<"3. Hewwelett-Packer"<<endl;break;
                    case 4:
                      cout<<"4. himba pis"<<endl;break;
                      cout<<endl;
              }                                
}//Koniec Pytania 5

                             

  
//wyświetlanie wynikow
               for (i=1; i<=5; i++)
               {
                    cout<<"zadanie "<<i<<" wynosi "<<odp[i]<<endl;                                  
               } 

//Wypełnianie tablicy poprawnymi odpowiedziami
   pop[2]==1;
   pop[2]==1;
   pop[2]==1;
   pop[2]==1;
   pop[2]==1;
   
    for (i=1; i<=5; i++)
    {
               {
                    cout<<"poprawne "<<i<<" wynosi "<<pop[i]<<endl;                                      
               } 
//Zliczanie poprawnych odpowiedzi
    
            if (odp[i]=pop[i]) 
               {
                          li=li+1;      
               } 
    } 
 ocena==(li*100)/10;
 cout<<"wynik "<<ocena<<endl;                                
                   
               
               
               if ((ocena<=100) and (ocena>=91))
                     { cout<<"Celujący"<<endl;}
               if ((ocena<=90) and (ocena>=81))
                     { cout<<"bardzo dobry"<<endl;} 
               if ((ocena<=80) and (ocena>=66))
                     { cout<<"dobry"<<endl;} 
               if ((ocena<=65) and (ocena>=46))
                     { cout<<"dostateczny"<<endl;}
               if ((ocena<=45) and (ocena>=31))
                     { cout<<"dopuszczający"<<endl;}
               if ((ocena<=3) and (ocena>=0))
                     { cout<<"niedostateczny"<<endl;}  
                     
                     }               
 getch();
 }
                      
                      
L6
  • Rejestracja:około 15 lat
  • Ostatnio:około 7 lat
0
NerV-0-sol napisał(a)

Ojojoj. Polecałbym jeszcze raz zrewidować swoją znajomość języka. To, co mi się rzuciło w oczy po pierwszym przeczytaniu:

  1. Tablica z poprawnymi odpowiedziami jest krótsza od tej, która zawiera same odpowiedzi. W jaki sposób miałyby zostać porównane?
  2. W miejscu, gdzie chcesz wypełniać tablicę poprawnymi odpowiedziami, stosujesz znak '==' (służy do PORÓWNANIA) zamiast '=' (służy do PRZYPISANIA).
  3. W pętli, która sprawdza poprawność odpowiedzi, znów stosujesz powyższe znaki odwrotnie. Tym razem, zamiast porównywać, stosujesz znak przypisania wartości.
  4. Nie musisz używać dodatkowej zmiennej 'n'. Po prostu zapisuj odpowiedź na konkretne miejsce w tablicy. Do switch'a też możesz używać miejsca z tablicy.
  5. W ogóle nie rozumiem fragmentu "Wypełnianie tablicy poprawnymi odpowiedziami".

chodzi to o to iż w jednej tablicy są mole odpowiedzi a w drugiej tablicy są poprawne odpowiedzi w pętli i warunku sprawdza czy są takie same i dodaje punkt albo nie

S2
  • Rejestracja:ponad 15 lat
  • Ostatnio:około 15 lat
0

if (odp[i]=pop[i])
{
li=li+1;
}

powinno być if (odp[i] == pop[i])

tablicę odpowiedzi inicjujesz źle bo inicjujesz cały czas element '2' zamiast wszystkich :/

L6
  • Rejestracja:około 15 lat
  • Ostatnio:około 7 lat
0

MA to zrobione problem mam z TABLICAMI I Z OCENA I LICZENIEM PUNKTÓW

Kopiuj
//Program kalkulator
#include<iostream>
#include<conio.h>

using namespace std;
int main()
{
int n,i;
int odp[10];
int pop[10];
int ocena,li,punkty;

//Pytanie 1
{
 cout<<"Pyt.1 PIerwszy komputer nazywa sie"<<endl; 

                       cout<<"1. Enigma"<<endl;
                       cout<<"2. Acer"<<endl;
                       cout<<"3. Asus"<<endl;
                       cout<<"4. Pecet"<<endl;
                        
                       cin>>n;
                 cout<<endl;
                                      odp[1]=n;                     
             switch(n)
              {
                   case 1:
                      cout<<"1. Enigma"<<endl ;break;
                   case 2:
                      cout<<"2. Acer"<<endl;break; 
                    case 3:   
                      cout<<"3. Asus"<<endl;break;
                    case 4:
                      cout<<"4. Pecet"<<endl;break;
                       cout<<endl;
                      
              }      
}//Koniec pytania 1

//Pytanie 2
{

           cout<<"Pyt.2 Skrot nazwy HP pochodzi od"<<endl; 

                       cout<<"1. Henz&Packer');"<<endl;
                       cout<<"2. haroln pank"<<endl;
                       cout<<"3. Hewwelett-Packer');"<<endl;
                       cout<<"4. himba pis"<<endl;
                        
                       cin>>n;
           cout<<endl;
                                      odp[2]=n;                   
             switch(n)
              {
                   case 1:
                      cout<<"1. Henz&Packer"<<endl ;break;
                   case 2:
                      cout<<"2. haroln pank"<<endl;break; 
                    case 3:   
                      cout<<"3. Hewwelett-Packer"<<endl;break;
                    case 4:
                      cout<<"4. himba pis"<<endl;break;
                      cout<<endl;
              }                                
}//Koniec Pytania 2  

//Pytanie 3
{
     
           cout<<"Pyt.3 Skrot nazwy HP pochodzi od"<<endl; 

                       cout<<"1. Henz&Packer');"<<endl;
                       cout<<"2. haroln pank"<<endl;
                       cout<<"3. Hewwelett-Packer');"<<endl;
                       cout<<"4. himba pis"<<endl;
                        
                       cin>>n;
        cout<<endl;
                                      odp[3]=n;                   
             switch(n)
              {
                   case 1:
                      cout<<"1. Henz&Packer"<<endl ;break;
                   case 2:
                      cout<<"2. haroln pank"<<endl;break; 
                    case 3:   
                      cout<<"3. Hewwelett-Packer"<<endl;break;
                    case 4:
                      cout<<"4. himba pis"<<endl;break;
                      cout<<endl;
              } 
//kONIEC PYTANIA 3  

//Pytanie 4
{
         
           cout<<"Pyt.4 Skrot nazwy HP pochodzi od"<<endl; 

                       cout<<"1. Henz&Packer');"<<endl;
                       cout<<"2. haroln pank"<<endl;
                       cout<<"3. Hewwelett-Packer');"<<endl;
                       cout<<"4. himba pis"<<endl;
                        
                       cin>>n;
                     cout<<endl;
                                      odp[4]=n;                   
             switch(n)
              {
                   case 1:
                      cout<<"1. Henz&Packer"<<endl ;break;
                   case 2:
                      cout<<"2. haroln pank"<<endl;break; 
                    case 3:   
                      cout<<"3. Hewwelett-Packer"<<endl;break;
                    case 4:
                      cout<<"4. himba pis"<<endl;break;
                      cout<<endl;
              }                                
}//Koniec Pytania 4

//Pytanie 5
{
        
           cout<<"Pyt.5 Skrot nazwy HP pochodzi od"<<endl; 

                       cout<<"1. Henz&Packer');"<<endl;
                       cout<<"2. haroln pank"<<endl;
                       cout<<"3. Hewwelett-Packer');"<<endl;
                       cout<<"4. himba pis"<<endl;
                        
                       cin>>n;
                      cout<<endl;
                                      odp[5]=n;                   
             switch(n)
              {
                   case 1:
                      cout<<"1. Henz&Packer"<<endl ;break;
                   case 2:
                      cout<<"2. haroln pank"<<endl;break; 
                    case 3:   
                      cout<<"3. Hewwelett-Packer"<<endl;break;
                    case 4:
                      cout<<"4. himba pis"<<endl;break;
                      cout<<endl;
              }                                
}//Koniec Pytania 5

//Pytanie 6
{
 cout<<"Pyt.6 PIerwszy komputer nazywa sie"<<endl; 

                       cout<<"1. Enigma"<<endl;
                       cout<<"2. Acer"<<endl;
                       cout<<"3. Asus"<<endl;
                       cout<<"4. Pecet"<<endl;
                        
                       cin>>n;
                 cout<<endl;
                                      odp[6]=n;                     
             switch(n)
              {
                   case 1:
                      cout<<"1. Enigma"<<endl ;break;
                   case 2:
                      cout<<"2. Acer"<<endl;break; 
                    case 3:   
                      cout<<"3. Asus"<<endl;break;
                    case 4:
                      cout<<"4. Pecet"<<endl;break;
                       cout<<endl;
                      
              }      
}//Koniec pytania 6

//Pytanie 7
{

           cout<<"Pyt.7 Skrot nazwy HP pochodzi od"<<endl; 

                       cout<<"1. Henz&Packer');"<<endl;
                       cout<<"2. haroln pank"<<endl;
                       cout<<"3. Hewwelett-Packer');"<<endl;
                       cout<<"4. himba pis"<<endl;
                        
                       cin>>n;
           cout<<endl;
                                      odp[7]=n;                   
             switch(n)
              {
                   case 1:
                      cout<<"1. Henz&Packer"<<endl ;break;
                   case 2:
                      cout<<"2. haroln pank"<<endl;break; 
                    case 3:   
                      cout<<"3. Hewwelett-Packer"<<endl;break;
                    case 4:
                      cout<<"4. himba pis"<<endl;break;
                      cout<<endl;
              }                                
}//Koniec Pytania 7

//Pytanie 8
{
     
           cout<<"Pyt.8 Skrot nazwy HP pochodzi od"<<endl; 

                       cout<<"1. Henz&Packer');"<<endl;
                       cout<<"2. haroln pank"<<endl;
                       cout<<"3. Hewwelett-Packer');"<<endl;
                       cout<<"4. himba pis"<<endl;
                        
                       cin>>n;
        cout<<endl;
                                      odp[8]=n;                   
             switch(n)
              {
                   case 1:
                      cout<<"1. Henz&Packer"<<endl ;break;
                   case 2:
                      cout<<"2. haroln pank"<<endl;break; 
                    case 3:   
                      cout<<"3. Hewwelett-Packer"<<endl;break;
                    case 4:
                      cout<<"4. himba pis"<<endl;break;
                      cout<<endl;
              } 
//kONIEC PYTANIA 8

//Pytanie 9
{
         
           cout<<"Pyt.9 Skrot nazwy HP pochodzi od"<<endl; 

                       cout<<"1. Henz&Packer');"<<endl;
                       cout<<"2. haroln pank"<<endl;
                       cout<<"3. Hewwelett-Packer');"<<endl;
                       cout<<"4. himba pis"<<endl;
                        
                       cin>>n;
                     cout<<endl;
                                      odp[9]=n;                   
             switch(n)
              {
                   case 1:
                      cout<<"1. Henz&Packer"<<endl ;break;
                   case 2:
                      cout<<"2. haroln pank"<<endl;break; 
                    case 3:   
                      cout<<"3. Hewwelett-Packer"<<endl;break;
                    case 4:
                      cout<<"4. himba pis"<<endl;break;
                      cout<<endl;
              }                                
}//Koniec Pytania 9

//Pytanie 10
{
        
           cout<<"Pyt.10 Skrot nazwy HP pochodzi od"<<endl; 

                       cout<<"1. Henz&Packer');"<<endl;
                       cout<<"2. haroln pank"<<endl;
                       cout<<"3. Hewwelett-Packer');"<<endl;
                       cout<<"4. himba pis"<<endl;
                        
                       cin>>n;
                      cout<<endl;
                                      odp[10]=n;                   
             switch(n)
              {
                   case 1:
                      cout<<"1. Henz&Packer"<<endl ;break;
                   case 2:
                      cout<<"2. haroln pank"<<endl;break; 
                    case 3:   
                      cout<<"3. Hewwelett-Packer"<<endl;break;
                    case 4:
                      cout<<"4. himba pis"<<endl;break;
                      cout<<endl;
              }                                
}//Koniec Pytania 10

                             

  
//wyświetlanie wynikow
               for (i=1; i<=10; i++)
               {
                    cout<<"zadanie "<<i<<" wynosi "<<odp[i]<<endl;                                  
               } 

//Wypełnianie tablicy poprawnymi odpowiedziami
   pop[1]=1;
   pop[2]=1;
   pop[3]=1;
   pop[4]=1;
   pop[5]=1;
   pop[6]=1;
   pop[7]=1;
   pop[8]=1;
   pop[9]=1;
   pop[10]=1;
   
    for (i=1; i<=10; i++)
    {
               {
                    cout<<"poprawne "<<i<<" wynosi "<<pop[i]<<endl;                                      
               } 
//Zliczanie poprawnych odpowiedzi
    
             if (odp[i] == pop[i])
               {
                          li=li+1;      
               } 
               else
               {
                          li=li+0;
               }
    } 
 ocena=(li*100)/10;
 ocena=ocena/10;
 cout<<"twoje punkty to "<<li<<endl;                                
  cout<<endl;                 
               
               
               if ((ocena<=100) ||(ocena>=91))
                     { cout<<"Celujący"<<endl;}
                  else   
                if((ocena<=90) || (ocena>=81))
                     {cout<<"bardzo dobry"<<endl;}
                  else
                if((ocena<=80) || (ocena>=66))
                     {cout<<"dobry"<<endl;}
                   else
               if((ocena<=65) || (ocena>=46))
                     {cout<<"dostateczny"<<endl;}
                else
               if((ocena<=45) || (ocena>=31))
                     {cout<<"dopuszczający"<<endl;}
                    else 
               if((ocena<=30) || (ocena>=0))
                      {cout<<"niedostateczny"<<endl;}                
                     } }             
 getch();
 }
                      
                      
matek3005
  • Rejestracja:około 15 lat
  • Ostatnio:prawie 5 lat
  • Postów:358
0
Kopiuj
   pop[1]=1;
   pop[2]=1;
   pop[3]=1;
   pop[4]=1;
   pop[5]=1;
   pop[6]=1;
   pop[7]=1;
   pop[8]=1;
   pop[9]=1;
   pop[10]=1;

rzuciłem okiem i to mi od razu w oczy wpadło, chłopie po co masz pętle w c++? Jakbyś miał tablice 10000 elementową też byś ręcznie to przypisywał? Przypatrz się co "tylko" Ci się zmienia w tym fragmencie :)
czy warto zaprzęgać "conio" i robić program "jednoplatformowym" tylko z powodu getch?
pozdrawiam

L6
  • Rejestracja:około 15 lat
  • Ostatnio:około 7 lat
0
NerV-0-sol napisał(a)
matek3005 napisał(a)
Kopiuj
   pop[1]=1;
   pop[2]=1;
   pop[3]=1;
   pop[4]=1;
   pop[5]=1;
   pop[6]=1;
   pop[7]=1;
   pop[8]=1;
   pop[9]=1;
   pop[10]=1;

rzuciłem okiem i to mi od razu w oczy wpadło, chłopie po co masz pętle w c++? Jakbyś miał tablice 10000 elementową też byś ręcznie to przypisywał? Przypatrz się co "tylko" Ci się zmienia w tym fragmencie :)
czy warto zaprzęgać "conio" i robić program "jednoplatformowym" tylko z powodu getch?
pozdrawiam

Ale Ty jesteś genialny... Według Ciebie koleś za każdym razem będzie robił takie pytania, że ta sama z kolei odpowiedź będzie poprawna? Co do drugiej uwagi to się zgadzam, ale sam widzisz, że koleś jest początkujący i dostał w ręce trochę zły tutorial. Z czasem sam by się dowiedział. Na razie trzeba pomóc z tym, co jest zupełnie źle.

ale to jest projekt potem będą inne pytania i inne odpowiedzi

Shalom
  • Rejestracja:około 21 lat
  • Ostatnio:prawie 3 lata
  • Lokalizacja:Space: the final frontier
  • Postów:26433
0

Kod jest do wyrzucenia. Jest absolutnie idiotyczny. Nie mówię już nawet o wychodzeniu poza tablicę (bo indeksujemy tablicę od 0 a nie od 1 i do n-1 a nie do n), tylko o tym że czasy liniowego programowania minęły 40 lat temu. Rozumiem że jak pytań będzie 1000 to autor skopiuje sobie ten kawałek kodu 1000 razy? A jak się okaże że jest błąd (np. brak jakiegoś newline) to autor będzie sobie przez kilka godzin poprawiał te 1000 linijek?
Lekcja na dziś: tablice, pętle, funkcje. Te wklejone 345 linijek można zmieścić w kodzie który będzie miał max 70-80 linii. Programując trzeba myśleć, a nie kopiować kawałki kodu...


"Nie brookliński most, ale przemienić w jasny, nowy dzień najsmutniejszą noc - to jest dopiero coś!"
matek3005
  • Rejestracja:około 15 lat
  • Ostatnio:prawie 5 lat
  • Postów:358
0
NerV-0-sol napisał(a)
matek3005 napisał(a)
Kopiuj
   pop[1]=1;
   pop[2]=1;
   pop[3]=1;
   pop[4]=1;
   pop[5]=1;
   pop[6]=1;
   pop[7]=1;
   pop[8]=1;
   pop[9]=1;
   pop[10]=1;

rzuciłem okiem i to mi od razu w oczy wpadło, chłopie po co masz pętle w c++? Jakbyś miał tablice 10000 elementową też byś ręcznie to przypisywał? Przypatrz się co "tylko" Ci się zmienia w tym fragmencie :)
czy warto zaprzęgać "conio" i robić program "jednoplatformowym" tylko z powodu getch?
pozdrawiam

Ale Ty jesteś genialny... Według Ciebie koleś za każdym razem będzie robił takie pytania, że ta sama z kolei odpowiedź będzie poprawna? Co do drugiej uwagi to się zgadzam, ale sam widzisz, że koleś jest początkujący i dostał w ręce trochę zły tutorial. Z czasem sam by się dowiedział. Na razie trzeba pomóc z tym, co jest zupełnie źle.

Z całym szacunkiem ale nawet jeśli są to testy no to chyba ten kawałek kodu można napisać za pomocą pętli czyż nie? :)

Zarejestruj się i dołącz do największej społeczności programistów w Polsce.

Otrzymaj wsparcie, dziel się wiedzą i rozwijaj swoje umiejętności z najlepszymi.