Diskuze: Počítání procent
V předchozím kvízu, Test znalostí C# .NET online, jsme si ověřili nabyté zkušenosti z kurzu.
Tvůrce
Zobrazeno 7 zpráv z 7.
//= Settings::TRACKING_CODE_B ?> //= Settings::TRACKING_CODE ?>
V předchozím kvízu, Test znalostí C# .NET online, jsme si ověřili nabyté zkušenosti z kurzu.
Protože dělíš celočíselně, vždy ti vyjde 0 a tu vynásobíš 100.
Zkus tohle:
(i / (float)songsDuration) * 100
Správně:
float i, songsDuration = 235, p_percentage = 0;
if (float.TryParse(textBox1.Text, out i))
p_percentage = i / songsDuration * 100;
díky, to přetypováni int na float číslo mi pomohlo, ovšem nechápu proč číslo ve formátu int je nutné přetypovat na float, když zůstane stejné
Když dělíš 2 celá čísla, C# předpokládá, že je chceš dělit celočíselně. Může to být matoucí, protože je ukládáš do float, ale stále to je dělení 2 celých čísel. Stejně tak ti dělení 2 floatů vrátí float a to i když ta čísla nebudou mít desetinná místa.
Bylo ti to již vysvětleno - způsobuješ tím celočíselné dělení - tedy číslo, které vyjde, je menší než nula, což je celočíselně 0...
Díky za pomoc.
Zobrazeno 7 zpráv z 7.