• Najnowsze pytania
  • Bez odpowiedzi
  • Zadaj pytanie
  • Kategorie
  • Tagi
  • Zdobyte punkty
  • Ekipa ninja
  • IRC
  • FAQ
  • Regulamin
  • Książki warte uwagi

Instrukcja switch

VPS Starter Arubacloud
0 głosów
201 wizyt
pytanie zadane 13 grudnia 2019 w C i C++ przez amtrax Dyskutant (9,630 p.)

Cześć, 

Użytkownik ma do wyboru opcje od 1-4, jeśli wybór będzie inny, program ma poprosić o podanie poprawnej wartości tak długo, dopóki użytkownik jej nie wpisze.

Jak poprzez instrukcję Switch rozwiązać taki problem? 

#include <iostream>

using namespace std;

int main()
{
    int choice, wybor=0;



    cout<<"a)Oferta "<<endl;
    cout<<"b)O nas"<<endl;
    cout<<"c)Galeria"<<endl;
    cout<<"d)Kontakt "<<endl;
    cout<<"-------------"<<endl;
    cout<<": ";cin>>choice;


while(choice!=10)  
{


    switch(choice)
    {
        case 1: cout<<"Nasza oferta: "<<endl;break;
        case 2: cout<<"Jestesmy firma: "<<endl;break;
        case 3: cout<<"galeria galeria"<<endl;break;
        case 4: cout<<"656 452 878"<<endl;break;
        default:break;  


    }
    

    cout<<endl;
    cout<<"Podaj litere: "<<endl;
    cout<<"a)Oferta "<<endl;
    cout<<"b)O nas"<<endl;
    cout<<"c)Galeria"<<endl;
    cout<<"d)Kontakt "<<endl;
    cout<<"-------------"<<endl;
    cout<<": ";cin>>choice;


        }

    return 0;
}

 

3 odpowiedzi

0 głosów
odpowiedź 13 grudnia 2019 przez tkz Nałogowiec (42,020 p.)
wybrane 13 grudnia 2019 przez amtrax
 
Najlepsza
#include <iostream>
 
using namespace std;
 
int main()
{
    int choice;
    cout<<"a)Oferta "<<endl;
    cout<<"b)O nas"<<endl;
    cout<<"c)Galeria"<<endl;
    cout<<"d)Kontakt "<<endl;
    cout<<"-------------"<<endl;
    while(std::cin>>choice)  
    {
        switch(choice)
        {
            case 1: cout<<"Nasza oferta: "<<endl;break;
            case 2: cout<<"Jestesmy firma: "<<endl;break;
            case 3: cout<<"galeria galeria"<<endl;break;
            case 4: cout<<"656 452 878"<<endl;break;
            default: ;  
        }
    }
    return 0;
}

 

+1 głos
odpowiedź 13 grudnia 2019 przez k222 Nałogowiec (30,150 p.)

bool again;

do {
    again = false;

    switch(choice)
    {
        case 1: cout<<"Nasza oferta: "<<endl;break;
        case 2: cout<<"Jestesmy firma: "<<endl;break;
        case 3: cout<<"galeria galeria"<<endl;break;
        case 4: cout<<"656 452 878"<<endl;break;
        default: again = true;   
    }
} while(again);

może coś takiego? - prosty do - while z flagą again

komentarz 13 grudnia 2019 przez amtrax Dyskutant (9,630 p.)
Dziękuje za odpowiedź, jednak autorowi zadania nie do końca  o to chodziło.

Jeśli użytkownik wpisze liczbę np. 5, program ma wyświetlić komunikat proszący o podanie wartości ponownie i tak do skutku. Gdy użytkownik poda dobrą wartość, odpowiedni jej przypadek ma się wyświetlić; tak w pętli cykl ponownie ma się wykonac.
komentarz 13 grudnia 2019 przez k222 Nałogowiec (30,150 p.)

no i?

przecież się powtarza, wystarczy cina dodać 


bool again;
 
do {
    again = false;
 
    switch(choice)
    {
        case 1: cout<<"Nasza oferta: "<<endl;break;
        case 2: cout<<"Jestesmy firma: "<<endl;break;
        case 3: cout<<"galeria galeria"<<endl;break;
        case 4: cout<<"656 452 878"<<endl;break;
        default: 
               cout<<"Wpisałeś "<<choice<<" tak nie wolno, spróbuj ponownie"<<endl;
               cin>> choice;
               again = true;   
    }
} while(again);

 

0 głosów
odpowiedź 13 grudnia 2019 przez Gildin1_2 Gaduła (3,060 p.)
Użyj pętli DoWhile i jeśli liczba jest poprawna po prostu zakończ pętle i tyle w temacie

Podobne pytania

+1 głos
1 odpowiedź 697 wizyt
pytanie zadane 9 lutego 2022 w C i C++ przez Dynamic Bywalec (2,910 p.)
0 głosów
0 odpowiedzi 1,099 wizyt
pytanie zadane 1 listopada 2019 w C i C++ przez Hubertius Bywalec (2,970 p.)
+3 głosów
1 odpowiedź 516 wizyt
pytanie zadane 22 października 2021 w C i C++ przez CrisGoldmann Nowicjusz (200 p.)

93,005 zapytań

141,971 odpowiedzi

321,251 komentarzy

62,343 pasjonatów

Motyw:

Akcja Pajacyk

Pajacyk od wielu lat dożywia dzieci. Pomóż klikając w zielony brzuszek na stronie. Dziękujemy! ♡

Oto polecana książka warta uwagi.
Pełną listę książek znajdziesz tutaj

Wprowadzenie do ITsec, tom 2

Można już zamawiać tom 2 książki "Wprowadzenie do bezpieczeństwa IT" - będzie to około 650 stron wiedzy o ITsec (17 rozdziałów, 14 autorów, kolorowy druk).

Planowana premiera: 30.09.2024, zaś planowana wysyłka nastąpi w drugim tygodniu października 2024.

Warto preorderować, tym bardziej, iż mamy dla Was kod: pasja (użyjcie go w koszyku), dzięki któremu uzyskamy dodatkowe 15% zniżki! Dziękujemy zaprzyjaźnionej ekipie Sekuraka za kod dla naszej Społeczności!

...