Pętla "do while" zawsze się powtarza, a ma się zakończyć przy wybraniu 1, 2 bądź 3

2018-10-28 20:42
0

Robię sobie zadanka z książki i pętla do while mi nie śmiga:

#include <iostream>
#include <windows.h>

using namespace std;

int main()
{
    int i;
    do
    {   
            cout << "Menu Gry:";
                Sleep(1000);
            cout << endl << endl;
            cout << "1. Nowa gra";
                Sleep(500);
            cout << endl;
            cout << "2. Wczytaj gre";
                Sleep(500);
            cout << endl;
            cout << "3. Koniec gry";
            cout << endl;
                Sleep(500);
            cout << endl;
            cout << "WYBIERZ (1, 2, 3): ";
            cin >> i;

    }while ( i!='1' || i!='2' || i!='3' );

    return 0;       
}

Pęta zawsze się powtarza a ma się zakończyć przy wybraniu 1, 2 bądź 3.

edytowany 1x, ostatnio: furious programming, 2018-10-28 23:06

Pozostało 580 znaków

2018-10-28 20:44
kq

Podstawy logiki. Jak działa OR:

p q p ∨ q
0 0 0
0 1 1
1 0 1
1 1 1

Więc

znak i!='1' i!='2' i!='3' i!='1'i!='2'i!='3'
1 0 1 1 1
2 1 0 1 1
3 1 1 0 1
każdy inny 1 1 1 1

Użyj AND - && - z odpowiednimi warunkami i przeczytaj dyskusję tutaj: https://4programmers.net/Forum/1532252


Pozostało 580 znaków

2018-10-28 20:56
0

Dzięki za pomoc :) Działa.

Pozostało 580 znaków

Liczba odpowiedzi na stronę

1 użytkowników online, w tym zalogowanych: 0, gości: 1, botów: 0