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

Menu Switch Case

Object Storage Arubacloud
0 głosów
276 wizyt
pytanie zadane 30 maja 2019 w C i C++ przez patryksz163 Nowicjusz (120 p.)
edycja 5 marca 2020 przez patryksz163

Witam ,próbuję stworzyć menu w którym będę wybieram daną listę , następnie z niej zadanie które się uruchamia. Napotkałem problem z pętlą do while, gdy stworzyłem pierwszą która kończy program wszystko jest okej, ale gdy zrobiłem kolejną wewnątrz switch case to niestety nie działa . Chciałbym aby ona powodowała cofnięcie do poprzedniego menu. Zapewne zrobiłem jakiś trywialny błąd. Kolejnym napotkałem jest użycie funkcji getchar(),abym nie musiał za każdym razem wyboru zatwierdzać enterem, lecz niestety również mi to nie działa.Byłbym wdzięczny również za udzielenie wskazówki jak ten program mogę ulepszyć w prosty sposób. Z góry dziękuje ;-)

http://szablony.freeware.info.pl/projekt.html

 


#include "pch.h"
#include <iostream>
#include <stdio.h>
using namespace std;

int main()
{
	int a;
	int suma = 0;
	int wybrana_lista = 0;
	int wybrane_zadanie = 0;
	a = 10;

	

	cout << "1. Lista 1\n2. Lista 2\n3. Lista 3\n4. Lista 4\n5. Koniec\n ";
	cin >> wybrana_lista;
	system("cls");
	do
	{
		switch (wybrana_lista) {
		case 1:

			cout << "1. Zadanie\n2. Zadanie \n3. Zadanie e\n4. Powrot do menu glownego";
			cin >> wybrane_zadanie;
			system("cls");

			do{
				switch (wybrane_zadanie) {
				case 1:
					float a, wynik;
					cout << "Podaj a =";
					cin >> a;
					wynik = a + 10;
					cout << endl << "wynik= " << wynik;


					break;
				}
			} while (wybrane_zadanie != 4);
			break;
		}
	} while (wybrana_lista != 5);
	getchar(); getchar();
	
}

 

1 odpowiedź

0 głosów
odpowiedź 30 maja 2019 przez Junior_plusplus Obywatel (1,130 p.)
#include "pch.h"
#include <iostream>
#include <stdio.h>
using namespace std;
 
int main()
{
    int a;
    int suma = 0;
    int wybrana_lista = 0;
    int wybrane_zadanie = 0;
    a = 10;
 
    do
    {
        cout << "1. Lista 1\n2. Lista 2\n3. Lista 3\n4. Lista 4\n5. Koniec\n ";
        cin >> wybrana_lista;
        system("cls");

        switch (wybrana_lista) {
        case 1:
 
            cout << "1. Zadanie\n2. Zadanie \n3. Zadanie e\n4. Powrot do menu glownego";
            cin >> wybrane_zadanie;
            system("cls");
 
            do{
                switch (wybrane_zadanie) {
                case 1:
                    float a, wynik;
                    cout << "Podaj a =";
                    cin >> a;
                    wynik = a + 10;
                    cout << endl << "wynik= " << wynik;
 
 
                    break;
                }
            } while (wybrane_zadanie != 4);
            break;
        }
    } while (wybrana_lista != 5);
    getchar(); getchar();
     
}

Otóż sekcja służąca do wyboru listy powinna znajdować się wewnątrz zewnętrznej pętli.

komentarz 30 maja 2019 przez patryksz163 Nowicjusz (120 p.)
Dziękuje, a co w wypadku getchar(); ? Byłbym wdzięczny za podpowiedź
komentarz 30 maja 2019 przez Junior_plusplus Obywatel (1,130 p.)

Z tego co mi wiadomo w języku C++ ne zaimplementowano żadnej funkcjonalności, która by pozwalała na taki bezpośredni wybór. Lecz można zrobić np.

...........
if(wybrana_lista == [i tu podajemy konkretny numer zadania])
{
    TU UMIESZCZAMY NASZ BLOK INSTRUKCJI
}

 

Podobne pytania

0 głosów
3 odpowiedzi 1,161 wizyt
pytanie zadane 30 kwietnia 2019 w C i C++ przez linq Początkujący (420 p.)
0 głosów
1 odpowiedź 1,026 wizyt
0 głosów
2 odpowiedzi 217 wizyt
pytanie zadane 29 października 2018 w C i C++ przez xBartosz4x Nowicjusz (140 p.)

92,552 zapytań

141,399 odpowiedzi

319,534 komentarzy

61,938 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.

Akademia Sekuraka

Kolejna edycja największej imprezy hakerskiej w Polsce, czyli Mega Sekurak Hacking Party odbędzie się już 20 maja 2024r. Z tej okazji mamy dla Was kod: pasjamshp - jeżeli wpiszecie go w koszyku, to wówczas otrzymacie 40% zniżki na bilet w wersji standard!

Więcej informacji na temat imprezy znajdziecie tutaj. Dziękujemy ekipie Sekuraka za taką fajną zniżkę dla wszystkich Pasjonatów!

Akademia Sekuraka

Niedawno wystartował dodruk tej świetnej, rozchwytywanej książki (około 940 stron). Mamy dla Was kod: pasja (wpiszcie go w koszyku), dzięki któremu otrzymujemy 10% zniżki - dziękujemy zaprzyjaźnionej ekipie Sekuraka za taki bonus dla Pasjonatów! Książka to pierwszy tom z serii o ITsec, który łagodnie wprowadzi w świat bezpieczeństwa IT każdą osobę - warto, polecamy!

...