INT vs FLOAT

C++, C#, Visual Basic, Delphi, Perl a ostatní

Moderátor: Moderátoři Živě.cz

Odeslat příspěvekod pinkp5221 13. 9. 2017 15:32

Zdravím lidi, učím se programovat (ani ne týden) a plním si v průběhu toho různé úkoly, jedním z úkoly je, vyžádat si dvě čísla od uživatele a a vypsat dělení a zbytek.
Kód níže:

int main()
{
int delenec, delitel, pomer, zbytek;

printf("Zadej cislo, ktere chces delit: \n");
scanf("%d", &delenec);

printf("Zadej cislo, kterym chces delit: \n");
scanf("%d", &delitel);

pomer = delenec / delitel;
zbytek = delenec % delitel;

printf("Pomer zadanych cisel: %d \n", pomer);

printf("Zbytek deleni: %d \n", zbytek);

return 0;
}

Používám datový typ int. Ovšem předtím jsem chtěl použít float a při jeho použití mi to nefungovalo. Nevíte proč?
Samozřejmě místo %d jsem dal %f, taktéž jsem místo int na začátku psal float.
pinkp5221
Kolemjdoucí

Odeslat příspěvekod Wikan 13. 9. 2017 15:50

Co přesně znamená nefungovalo? Počítat zbytek po dělení reálných čísel nemá moc smysl.
Wikan
Moderátor
Uživatelský avatar

Odeslat příspěvekod Just_jo 13. 9. 2017 16:04

Just_jo
Junior
Uživatelský avatar

Odeslat příspěvekod pinkp5221 13. 9. 2017 16:14

Napsalo to tohle: EXPRESSION MUST HAVE INTEGRAL TYPE.

Nerozumím jedné věci, proč?
Psalo to u řádku: zbytek = delenec % delitel;
Důvod proč tohle zkouším? Na internetu jsem si našel různé úkoly pro programování v C, konkrétně tady: https://www.programiz.com/c-programming ... r-quotient
pinkp5221
Kolemjdoucí

Odeslat příspěvekod Wikan 13. 9. 2017 17:10

Proč? Protože zbytek dělení se standardně používá u dělení celých čísel. Pokud ti přesto z nějakého důvodu chceš použít u reálných, použij funkci zmíněnou v odkazu výše.
Wikan
Moderátor
Uživatelský avatar

Odeslat příspěvekod JanFiala 14. 9. 2017 07:09

pinkp5221 píše:Používám datový typ int. Ovšem předtím jsem chtěl použít float a při jeho použití mi to nefungovalo. Nevíte proč?
Samozřejmě místo %d jsem dal %f, taktéž jsem místo int na začátku psal float.



Používáš funkci MOD (%), ta jde použít pouze pro celá čísla (integer), ne pro reálná
Co můžeš udělat dnes, odlož na včerejšek
JanFiala
Expert
Uživatelský avatar


  • Podobná témata
    Odpovědi
    Zobrazení
    Autor

Kdo je online

Uživatelé procházející toto fórum: RoMeiRo a 1 návštěvník