Código Java:
import java.util.Scanner; class SumarDigitos { public static void main(String[] args) { Scanner miScanner = new Scanner(System.in); int numero; int resultado = 0; System.out.print("Introduce un número para sumar sus dígitos: "); numero = miScanner.nextInt(); while(numero > 0) { resultado += numero % 10; numero = numero / 10; } System.out.println("La suma es: " + resultado); } }
No tiene ninguna complicación para entender el código. Lo que hay que entender es cómo funciona el bucle while. Lo que hace este bucle es que mientras que el número sea mayor que 0, se van llevando a cabo las siguientes operaciones:
- La variable resultado pasa a valer el resultado de sumar el valor de resultado al resultado de sacar el residuo del número entre 10 (con esta operación, por ejemplo, si tenemos 456 al aplicar el residuo entre 10 el resto valdrá 6 que es el último dígito del número)
- Después el número se divide entre 10 para repetir el proceso en el bucle y dividir todos los dígitos mientras se almacena el valor en la variable resultado
Espero que os sirva el código y, si tenéis alguna duda dejar un comentario.
muy buena aportación, y si quisiera hacer lo mismo pero con 5 o + números, ejemplo 456, 258, 9865, 25874. como seria el bucle?
ResponderEliminarasheeeeee
Eliminarparse a string, haces charAt, y vuelves a parsear a Int haciendo que se sume
Eliminaraca tenes la respuesta: https://i.ytimg.com/vi/xRB2_HvAQzA/sddefault.jpg
ResponderEliminar