Test Foro de elhacker.net SMF 2.1

Programación => Programación C/C++ => Mensaje iniciado por: Komodo en 30 Agosto 2010, 09:44 AM

Título: Rallada de numero de dos cifras
Publicado por: Komodo en 30 Agosto 2010, 09:44 AM
Si tengo un numero de dos cifras que me sale a partir de esto:

(num*3+3)*3)

Eso imaginemos que es 36..

Pues yo para intentar sacar cada cifra de ese número hacia esto:

(((num*3+3)*3)%10)

((((num*3+3)*3)%10)+((num*3+3)*3))/10)

Bueno el primero si que me lo saca bien, pues es el resto de la division entre 10 y es 6

Pero luego en lo otro me da 4, 6+36=42 y eso se divide entre 10 y me da 4.

Ahora probad a poned un número mayor que 50 o 50, y si que funciona... :huh:
Título: Re: Rallada de numero de dos cifras
Publicado por: clodan en 30 Agosto 2010, 14:58 PM
Pero para que lo sumas??

mira, pone 2 variables diferentes,

X, y Y

entonces pones

int x, y;
y despues abajo destinas asi

x=(((num*3+3)*3)%10)
y=(((num*3+3)*3)/10)

Listo, y lo que este adelante de la coma y x lo que este atras...
Título: Re: Rallada de numero de dos cifras
Publicado por: Komodo en 30 Agosto 2010, 15:31 PM
Correcto, gracias ya estaba solucionado, antes hacia una cosa muy rara.

De todos modos gracias.
Título: Re: Rallada de numero de dos cifras
Publicado por: do-while en 30 Agosto 2010, 17:44 PM
¡Buenas!

Solo una cosa, no es que sea un error, es simplemente por claridad del codigo:

(num * 3 + 3) * 3 = (num + 1) * 9

¡Saludos!