čtení char a uložení do double – C / C++ – Fórum – Programujte.com
 x   TIP: Přetáhni ikonu na hlavní panel pro připnutí webu
Reklama
Reklama

čtení char a uložení do double – C / C++ – Fórum – Programujte.comčtení char a uložení do double – C / C++ – Fórum – Programujte.com

 

Hledá se programátor! Plat 1 800 € + bonusy (firma Boxmol.com)
Vladimír
~ Anonymní uživatel
31 příspěvků
7. 10. 2013   #1
-
0
-

Dobrý den, mám tento kus kódu:

	double cislo;
	scanf("%lf", &cislo);
	if (cislo == 'Q')
	{
		...
		return 0;
	}

Bohužel jsem čekal, že se mi do proměnné 'cislo' uloží hodnota '81.000...' víte jak toto vyřešit? Kdybych četl '%c' a hodnota by nebyla zrovna 'Q', tak bych nemohl provádět výpočet.

Moje ideální představa by byla, aby se do proměnné číslo uložila hodnota'81.000...' a já jí mohl jednoduše porovnat.

Děkuji mnohokrát

Nahlásit jako SPAM
IP: 89.103.254.–
Reklama
Reklama
vitamin+8
Grafoman
7. 10. 2013   #2
-
0
-

porovnavanie float/double cisel je problematicke. Mozes skusit nieco taketo:

if(((double)'Q' - 0.0001) < cislo && cislo < ((double)'Q' + 0.0001) )
Nahlásit jako SPAM
IP: 195.28.77.–
obfuscate: "The cruel god Malloc will strike you down. "
ZMeson: "That's the C god. C++ has a new god. "
KIIV+42
God of flame
7. 10. 2013   #3
-
0
-

#2 vitamin
do double stejne nedostane 81 tim ze to nacte pres scanf("%ld"...)

proste bych se byt tebou vyhnul takovejmhle hackum... neco jako:

if (scanf("%ld", &cislo) != 1) { // scanf vraci pocet nactenych parametru
                                 // - kdyz se zada 'Q' tak to nebude uspesne nactene
  char x;
  scanf("%c",&x); // 'Q' (ci jakykoliv jiny spatny znak) zustane na vstupu - nacist
  if (x=='Q') { // a pokud je to Q tak vypiseme co chceme a konec
    ...
    return 0;
  }
}
Nahlásit jako SPAM
IP: 62.216.147.–
Program vždy dělá to co naprogramujete, ne to co chcete...
Vladimír
~ Anonymní uživatel
31 příspěvků
7. 10. 2013   #4
-
0
-

To je přesně to, co jsem potřeboval, příště zkusím vymyslet lepší postup, když už o této komplikaci vím.

Mnohokrát děkuji

Nahlásit jako SPAM
IP: 89.103.254.–
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, 53 hostů

Podobná vlákna

Char to double — založil Wizard

Problem s double — založil braba

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ý