Panel użytkownika
Nazwa użytkownika:
Hasło:
Nie masz jeszcze konta?

Do while - program szaleje ,gdy wcisne literkę

Ostatnio zmodyfikowano 2014-01-22 16:26
Autor Wiadomość
OnemoreS
Temat założony przez niniejszego użytkownika
» 2014-01-14 16:27:03
Jeżeli tak zrobię to przy wylosowaniu pytaniu reszta też będzie się losować ? Czyli odpowiedz czy pyt jest prawidłowe itp.
P-102162
leon_w
» 2014-01-14 16:32:12
To dodatkowo stwórz tablicę int o tylu elementach, ile pytań. Do każdego elementu tej tablicy, zapisuj nr. prawidłowej odpowiedzi.
Po wylosowaniu nr. pytania, wstaw również ten nr. do indeksu int i z nim porównuj odpowiedzi.
P-102163
OnemoreS
Temat założony przez niniejszego użytkownika
» 2014-01-15 19:04:20
C/C++
#include<iostream>
#include<conio.h>
#include <string>
using namespace std;
int main()
{
    int a, b, c;
    int szansa = 3;
    char pytania[ 3 ]
   
   
   
    cout << "Witamy w turnieju !" << endl;
    cout << "- Program wylosuje 5 pytan" << endl;
    cout << "- Gracz posiada 3 szanse" << endl;
    cout << "- Po kazdej zlej odpowiedzi , szansa zostanie utracona" << endl;
    cout << "- Gdy wszystkie szanse zostana utracone - przegrywasz" << endl;
    cout << "- Gdy odpowiesz na pytania nie tracac wszystkich szans- wygrywasz" << endl;
   
    do
    {
        cin.clear();
        cin.sync();
        string pytania[ 10 ] = { "Podaj stolice Grecji  \n 1)Londyn 2)Paryz 3)Ateny 4)Moskwa" << endl;
            cin >> a;
           
        } while( !( a == 1 || a == 2 || a == 3 || a == 4 ) || !cin.good() );
       
        if( a == 3 )
             cout << "brawo , prawidlowa odpowiedz" << endl;
       
        if( a == 1 || a == 2 || a == 4 )
             cout << "niestety zla odpowiedz , prawidlowa odpowiedz to 3)Ateny" << endl;
       
        szansa--;
        cout << "Twoja liczba szans wynosi: " << szansa << endl;
        cout << "------------------------------------------------------------" << endl;
        if( szansa == 0 )
             cout << "niestety wykorzystales wszystkie szans - porazka!" << endl;
       
       
       
       
       
        do
        {
            cin.clear();
            cin.sync();
            cout << "W ktorym roku wybuchla II wojna swiatowa" << endl;
            cout << "1)1939 2)1940 3)1941 4)1942" << endl;
            cin >> b;
           
        } while( !( b == 1 || b == 2 || b == 3 || b == 4 ) || !cin.good() );
       
        if( b == 1 )
             cout << "brawo , prawidlowa odpowiedz" << endl;
       
        if( b == 2 || b == 3 || b == 4 )
             cout << "niestety zla odpowiedz , prawidlowa odpowiedz to 1)1939" << endl;
       
        szansa--;
        cout << "Twoja liczba szans wynosi: " << szansa << endl;
        cout << "------------------------------------------------------------" << endl;
        if( szansa == 0 )
       
       
             cout << "niestety wykorzystales wszystkie szanse - porazka!" << endl;
       
        do
        {
            cin.clear();
            cin.sync();
            cout << "Ktora reprezentacja pilki noznej wygrala mundial w 2006 roku" << endl;
            cout << "1)Hiszpania 2)Brazylia 3)Portugalia 4)Wlochy" << endl;
            cin >> c;
           
        } while( !( c == 1 || c == 2 || c == 3 || c == 4 ) || !cin.good() );
       
        if( c == 4 )
             cout << "brawo , prawidlowa odpowiedz" << endl;
       
        if( c == 1 || c == 2 || c == 3 )
             cout << "niestety zla odpowiedz , prawidlowa odpowiedz to 4)Wlochy" << endl;
       
        szansa--;
        cout << "Twoja liczba szans wynosi: " << szansa << endl;
        cout << "------------------------------------------------------------" << endl;
       
        if( szansa == 0 )
       
             cout << "niestety wykorzystales wszystkie szanse - porazka!" << endl;
       
       
       
       
       
       
       
       
       
       
       
        getch();
        return 0;
    }
 już na samym wstępie wywala błąd , nie jestem w stanie pojąć jak ma wyglądać ta struktura , gdybyście podali mi jakiś przykład chociaż
P-102255
leon_w
» 2014-01-15 22:02:35
To raczej miało wyglądać tak:
C/C++
#include<iostream>
#include<conio.h>
#include <string>
#include <ctime>
#include <stdlib.h>
using namespace std;
int main()
{
    int a;
    int szansa = 3;
    int nr_pytania;
   
   
   
    string pytania[ 3 ] = { "Podaj stolice Grecji  \n 1)Londyn 2)Paryz 3)Ateny 4)Moskwa",
        "W ktorym roku wybuchla II wojna swiatowa? \n 1)1939 2)1940 3)1941 4)1942",
        "Ktora reprezentacja pilki noznej wygrala mundial w 2006 roku? \n 1)Hiszpania 2)Brazylia 3)Portugalia 4)Wlochy" };
    int odpowiedz[ 3 ] = { 3, 1, 4 };
   
   
   
    srand( time( NULL ) );
   
   
   
    cout << "Witamy w turnieju !" << endl;
    cout << "- Program wylosuje 5 pytan" << endl;
    cout << "- Gracz posiada 3 szanse" << endl;
    cout << "- Po kazdej zlej odpowiedzi , szansa zostanie utracona" << endl;
    cout << "- Gdy wszystkie szanse zostana utracone - przegrywasz" << endl;
    cout << "- Gdy odpowiesz na pytania nie tracac wszystkich szans- wygrywasz\n\n\n" << endl;
   
   
    do
    {
        nr_pytania = rand() % 3;
        do
        {
            cin.clear();
            cin.sync();
           
           
            cout << pytania[ nr_pytania ] << endl;
           
            cin >> a;
           
        } while( !( a == 1 || a == 2 || a == 3 || a == 4 ) || !cin.good() );
       
        if( a ==( odpowiedz[ nr_pytania ] ) )
             cout << "brawo , prawidlowa odpowiedz" << endl;
       
        else {
            cout << "niestety zla odpowiedz" << endl;
            szansa--;
        }
       
        cout << "Twoja liczba szans wynosi: " << szansa << endl;
        cout << "------------------------------------------------------------" << endl;
       
    } while( szansa > 0 );
   
    if( szansa == 0 )
         cout << "niestety wykorzystales wszystkie szans - porazka!" << endl;
   
   
    getch();
    return 0;
}

Porównaj ze swoim kodem i pomyśl co robiłeś źle.
P-102281
OnemoreS
Temat założony przez niniejszego użytkownika
» 2014-01-22 16:26:57

Rozumiem to wszystko teraz , dziękuje ! Poprostu nie wiedziałem jak zapisać tą strukturę całą , główny problem był z tym :


int odpowiedz[ 3 ] = { 3, 1, 4 };
 
Miałem problem aby odpowiedz przypusać do tablicy , bardzo dziękuje !
P-102837
1 « 2 »
Poprzednia strona Strona 2 z 2