Operaciones entre posiciones de un entero

Iniciado por porfaplis, 20 Noviembre 2018, 23:15 PM

0 Miembros y 1 Visitante están viendo este tema.

porfaplis

Hola a todos!! Tengo una duda a la que por más quele de vueltas no encuentro solución, ¿cómo se hacen operaciones entre las distintas posiciones de un entero?, por ejemplo, el numero 123456 quiero sumar el 2,4 y 6.

Un saludo y gracias!!

K-YreX

Para ello tienes que descomponer el número. Puedes hacerlo con un algoritmo que va cogiendo cada cifra y metiéndola en un array o bien transformándolo en un string o cadena C para poder acceder a cada posición independientemente.
Si tienes alguna duda más pon tu código para ver lo que pretendes hacer exactamente.
Código (cpp) [Seleccionar]

cout << "Todos tenemos un defecto, un error en nuestro código" << endl;


K-YreX

Entonces tienes que hacer lo que te he comentado antes pero sin usar arrays, osea directamente suma cada dígito a un acumulador si la posición es par y a otro acumulador si es impar. Como pista tienes que usar los operadores </> (calcula el cociente de una división) y <%> (calcula el resto de una división entera) y usar algunas potencias de 10 para ir separando dígitos.
Ahora el programa te toca hacerlo a ti.
Código (cpp) [Seleccionar]

cout << "Todos tenemos un defecto, un error en nuestro código" << endl;

porfaplis

Muchisimas gracias!! No habia caído en lo del acumulador!! Vamos a ver si damos con ello!!