Nefunkční switch? – C / C++ – Fórum – Programujte.com
 x   TIP: Přetáhni ikonu na hlavní panel pro připnutí webu
Reklama
Reklama

Nefunkční switch? – C / C++ – Fórum – Programujte.comNefunkční switch? – C / C++ – Fórum – Programujte.com

 

Hledá se programátor! Plat 1 800 € + bonusy (firma Boxmol.com)
kojor44
~ Anonymní uživatel
3 příspěvky
18. 7. 2016   #1
-
0
-

   

#include <iostream>
using namespace std;

int main ()
{
	int volba;
	cin >> volba;
	while (volba != 3);
	{
		switch (volba)
		{
		case 1: cout << "XXXX";
				break; 

		case 2: cout << "ZZZZ";
				break;

		default:
				cout << "toto neni volba";
		}
		
		cin >> volba;
	}
	cout << "KONEC";
}

po zadani 3, vyskoci "toto neni volba" a pri zadani jineho cisla nedela nic a jakoby zamrzne...

Nahlásit jako SPAM
IP: 94.74.242.–
Reklama
Reklama
hlucheucho+10
Posthunter
18. 7. 2016   #2
-
+1
-
Zajímavé
Kit +

Ze vstupního proudu přečteš jen jednou a vstoupíš do cyklu. cin by mělo být v těle cyklu před switch a měl bys před tím, než uživatele vyzveš k zadání vyprázdnit vstupní proud.

hu

Nahlásit jako SPAM
IP: 195.178.67.–
Ovrscout
~ Anonymní uživatel
69 příspěvků
18. 7. 2016   #3
-
+1
-
Zajímavé
Kit +

#1 kojor44
za while máš středník navíc co ti udělá nekonečnou smyčku pokud to nebude číslo 3 :) .

Navíc testuješ ještě před tím switchem takže když dáš ten středník pryč tak ti to při zadání trojky neudělá nic jen ukončí program.

spíš bych to zkusil přepsat jako do{}while() i kdy6 ho b26n2 moc nepoužívám: (neotestovany kod!)

do{
	cin >> volba;
	switch(..)
	{
	..
	};
}while(volba!=3);
Nahlásit jako SPAM
IP: 193.165.79.–
Ovrscout
~ Anonymní uživatel
69 příspěvků
18. 7. 2016   #4
-
0
-
Nahlásit jako SPAM
IP: 193.165.79.–
kojor44
~ Anonymní uživatel
3 příspěvky
18. 7. 2016   #5
-
0
-

3 hodiny u toho sedím a říkám si, jestli jsem debil nebo ne :D

chyba byla samozřejmě v tom středníku :D

tohle je jen zjednodušená verze toho co dělám, jinak to je samozřejmě ošetřeno.

Díky

Nahlásit jako SPAM
IP: 94.74.242.–
kojor44
~ Anonymní uživatel
3 příspěvky
18. 7. 2016   #6
-
0
-

#5 kojor44
naprosto netuším kde se tam ten středník vzal... :)

Nahlásit jako SPAM
IP: 94.74.242.–
Zjistit počet nových příspěvků

Přidej příspěvek

Toto téma je starší jak čtvrt roku – přidej svůj příspěvek jen tehdy, máš-li k tématu opravdu co říct!

Ano, opravdu chci reagovat → zobrazí formulář pro přidání příspěvku

×Vložení zdrojáku

×Vložení obrázku

Vložit URL obrázku Vybrat obrázek na disku
Vlož URL adresu obrázku:
Klikni a vyber obrázek z počítače:

×Vložení videa

Aktuálně jsou podporována videa ze serverů YouTube, Vimeo a Dailymotion.
×
 
Podporujeme Gravatara.
Zadej URL adresu Avatara (40 x 40 px) nebo emailovou adresu pro použití Gravatara.
Email nikam neukládáme, po získání Gravatara je zahozen.
-
Pravidla pro psaní příspěvků, používej diakritiku. ENTER pro nový odstavec, SHIFT + ENTER pro nový řádek.
Sledovat nové příspěvky (pouze pro přihlášené)
Sleduj vlákno a v případě přidání nového příspěvku o tom budeš vědět mezi prvními.
Reaguješ na příspěvek:

Uživatelé prohlížející si toto vlákno

Uživatelé on-line: 0 registrovaných, 65 hostů

Podobná vlákna

Switch — založil Onsi

Switch — založil geon

Switch — založil belze

Rychlost switch — založil Franceq

Moderátoři diskuze

 

Hostujeme u Českého hostingu       ISSN 1801-1586       ⇡ Nahoru Webtea.cz logo © 20032016 Programujte.com
Zasadilo a pěstuje Webtea.cz, šéfredaktor Lukáš Churý