[C++] Gra "zgadnij liczbę"

paula001
Użytkownik
Użytkownik
Posty: 10
Rejestracja: 5 lis 2014, o 21:16
Płeć: Kobieta
Lokalizacja: Warszawa
Podziękował: 3 razy

[C++] Gra "zgadnij liczbę"

Post autor: paula001 »

Cześć!
Napisałam program na zgadywanie liczby, ale mi nie działa. Nie wiem czemu i nie wiem, czy w ogóle mój sposób rozumowania jest dobry. Proszę Was o pomoc

Kod: Zaznacz cały

#include <iostream>
using namespace std;
int main()
{
    int p, k, s, x;
    char odp1, odp2, t, n;
    cin>>p>>k;
    s=(p+k)/2;
    do{
        cout<<"czy ta liczba to "<<s;
        cin>>odp1;
        if(odp1==t) break;
        else if(odp1==n)
        {
            cout<<"czy ta liczba jest mniejsze od "<<s;
            s=(p+k)/2;
            cin>>odp2;
            if(odp2==t) k=s;
            else if(odp2==n) p=s;

        }
    }while(k!=p) ;

    cout<<s;
    return 0;
}
Ostatnio zmieniony 6 lis 2014, o 13:12 przez Afish, łącznie zmieniany 2 razy.
Powód: Dodanie tagów.
Awatar użytkownika
Kacperdev
Użytkownik
Użytkownik
Posty: 3260
Rejestracja: 23 mar 2010, o 19:19
Płeć: Mężczyzna
Lokalizacja: Bydgoszcz
Podziękował: 17 razy
Pomógł: 686 razy

[C++] Gra "zgadnij liczbę"

Post autor: Kacperdev »

Co prawda nie sprecyzowałaś na czym polega dokładnie ta gra to na wstępie widać, że w w warunku sprawdzasz, czy :

Kod: Zaznacz cały

else if(odp1==n)

gdy \(\displaystyle{ n}\) nie ma ustalonej wartości.

Dla \(\displaystyle{ t}\) jest zresztą podobnie.
paula001
Użytkownik
Użytkownik
Posty: 10
Rejestracja: 5 lis 2014, o 21:16
Płeć: Kobieta
Lokalizacja: Warszawa
Podziękował: 3 razy

[C++] Gra "zgadnij liczbę"

Post autor: paula001 »

t i n nie ma ustalonej wartości w liczbach. t to tak, n to nie. Komputer zadaje pytanie, a odpowiadający może odpowiedzieć t lub n. Nie wiem jak to napisać w kodzie, że t i n to tylko litery, a nie cyfry.
W grze chodzi o to, żeby pomyśleć jakąś liczbę całkowitą z danego przedziału, a komputer ma ją odgadnąć.
Awatar użytkownika
Kacperdev
Użytkownik
Użytkownik
Posty: 3260
Rejestracja: 23 mar 2010, o 19:19
Płeć: Mężczyzna
Lokalizacja: Bydgoszcz
Podziękował: 17 razy
Pomógł: 686 razy

[C++] Gra "zgadnij liczbę"

Post autor: Kacperdev »

To powinno być:

Kod: Zaznacz cały

 if(odp1=='t') break;
Poza tym po co Ci w takim razie zmienne t i n.
paula001
Użytkownik
Użytkownik
Posty: 10
Rejestracja: 5 lis 2014, o 21:16
Płeć: Kobieta
Lokalizacja: Warszawa
Podziękował: 3 razy

[C++] Gra "zgadnij liczbę"

Post autor: paula001 »

Dzięki, nie wiedziałam, że trzeba wpisać 't' zamiast t. Poprawiłam jeszcze kilka rzeczy i już działa :)
ODPOWIEDZ