Portál AbcLinuxu, 26. července 2025 01:52


Dotaz: c - spojeni 2 int do 1

4.8.2011 22:03 c
c - spojeni 2 int do 1
Přečteno: 313×
Odpovědět | Admin
Mam nasledujici kod v C:
int a, b;
float c;

a = 2;
b = 3;
Jak muzu ulozit promene a a b delene 10 do c, tak aby c=2.3?
Nástroje: Začni sledovat (0) ?Zašle upozornění na váš email při vložení nového komentáře.

Odpovědi

4.8.2011 22:12 voda | skóre: 28
Rozbalit Rozbalit vše Re: c - spojeni 2 int do 1
Odpovědět | | Sbalit | Link | Blokovat | Admin
Co třeba c = a + b / 10?
stativ avatar 5.8.2011 15:58 stativ | skóre: 54 | blog: SlaNé roury
Rozbalit Rozbalit vše Re: c - spojeni 2 int do 1
To by použilo celočíselný dělení. Musíš použít c = a + b / 10.0f
Ať sežeru elfa i s chlupama!!! ljirkovsky.wordpress.com stativ.tk
4.8.2011 22:45 jekub
Rozbalit Rozbalit vše Re: c - spojeni 2 int do 1
Odpovědět | | Sbalit | Link | Blokovat | Admin
c = (a && b/10) * 0 + 2.3
4.8.2011 23:34 mato
Rozbalit Rozbalit vše Re: c - spojeni 2 int do 1
no to by nebolo uz lahsie spravit:) ?:

c = 2.3;

ale autor prispevku chce asi toto:

float c = a + (float)b/10;
5.8.2011 09:18 jekub
Rozbalit Rozbalit vše Re: c - spojeni 2 int do 1
vase reseni neodpovida zadani :)

"a a b delene 10 do c, tak aby c=2.3"
5.8.2011 09:52 mato
Rozbalit Rozbalit vše Re: c - spojeni 2 int do 1
heh, no da sa nad tym zadanim teda poriadne spekulovat ;-)
5.8.2011 12:10 NeoV | skóre: 23
Rozbalit Rozbalit vše Re: c - spojeni 2 int do 1
velmi divne zadanie :-)

co ak b=30 ? potom ma byt c=5.0 ? alebo c=2.3 ? Ako sa potom da spatne zistit ci b bolo 3 alebo 30 ? alebo 300 ? :-)
5.8.2011 15:36 luky
Rozbalit Rozbalit vše Re: c - spojeni 2 int do 1
A co tak najprv to sformatovat ako retazec a ten naspat skovertovat na float. Netestovana verzia :-)

char buff[255];

snprintf(buff, 254, "%d.%d", a, b);
sscanf(buff, "%f", &c);

Založit nové vláknoNahoru

Tiskni Sdílej: Linkuj Jaggni to Vybrali.sme.sk Google Del.icio.us Facebook

ISSN 1214-1267, (c) 1999-2007 Stickfish s.r.o.