Java - AYUDA en un Programa sencillo de JAVA

   
Vista:

AYUDA en un Programa sencillo de JAVA

Publicado por susto (5 intervenciones) el 08/12/2014 17:55:40
Hola a todos;

Me estoy iniciando en esto de la programación en Java y llevo mas de dos horas tratando de resolver el siguiente problema:

Introducir un número comprendido entre 0 y 1000, es decir de tres cifras y sacar por consola la suma de esos numeros

Ejemplo. Introducimos 230 y por pantalla debe salir la suma de 2+3+0, es decir 5.

Seguramente será una tontería, pero no caigo. Por favor si alguien lo sabe, sólo pido orientación de como enfocarlo

Saludos y gracias de antemano
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder

AYUDA en un Programa sencillo de JAVA

Publicado por juanki (95 intervenciones) el 08/12/2014 19:06:33
Hola

Pues se me ocurre que puedes convertir el número a cadena, luego recorrerla y convertir cada uno de los caracteres (dígitos) a int, sumarlos y tienes la suma de los dígitos de la cadena.

Saludos
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

AYUDA en un Programa sencillo de JAVA

Publicado por susto (5 intervenciones) el 08/12/2014 22:59:56
Muchas gracias Juanki por tú comentario, pero me quedo igual, eso de recorrerla se me escapa, incluso lo de convertir un entero en una cadena.
Tener en cuenta, que es un ejercicio básico de JAVA (Del primer tema), de momento sólo he dado los tipos de datos que hay, operadores, las salidas y entradas por pantalla y poco más. No hemos dado condicionales ni nada aún. En teoría se debería resolver con algo básico y seguro que es alguna tontería, pero por más vueltas que le doy a la cabeza no se me ocurre una solución sencilla.
He pensado en transformar el número a ASCII, pero para que, obtendría una letra y ya está.
En fin que no se.
De todas formas, muchas gracias por vuestra atención.
Si a alguien se le ocurre algo se lo agradecería.
Saludos y muchas gracias
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

AYUDA en un Programa sencillo de JAVA

Publicado por Tom (912 intervenciones) el 09/12/2014 10:19:24
Pero ... algo de matemáticas sí te habrán enseñado en algún sitio ¿ no ?
Tonterías como que si divides 235 entre 10, el resultado es 23 y el resto es 5 ... ¡ que curioso, 5, el último dígito de mi número !
Y otra peculiaridad ... ahora divides 23 entre 10 ... y el resultado es 2, con resto 3 ... vaya vaya qué casualidad ...
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

AYUDA en un Programa sencillo de JAVA

Publicado por susto (5 intervenciones) el 11/12/2014 00:20:23
Hola Tom;

Pues esas eran las clases de "tonterías" en las que no caía. Si, matemáticas me enseñaron en algún momento de mi vida, pero ya no recordaba esas reglas.

A pesar de tú ironía me ha gustado mucho tu respuesta.

Tendré que retomar esas viejas clases de matemáticas del instituto.

Lo dicho, muchísimas gracias Crack!!.

Saludos
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
Imágen de perfil de Alex

AYUDA en un Programa sencillo de JAVA

Publicado por Alex (1 intervención) el 08/12/2014 23:00:59
Hola, te sugiero que utilizes un bucle para guardar los digitos uno por uno, luego cada digito que guardes lo sumas en un a variable.
Ejemplo 1
entero num = 120;
entero dig = 0;
entero suma = 0;
mientras 120 > 0 hacer
dig = 120 mod 10 // acá te devuelve el primer digito, en este caso 0.
suma+=dig;
fin mientras
Esto solo se cumplirá sólo si numero > 0, claro al ultimo debes imprimir la suma.

Utilizando Arreglos:
Guarda cada dígito del número en un arreglo; puedes utilizar el mismo procedimiento que el anterior pero para calcular
la suma solo tienes que recorrer y sumar cada elemento del arreglo, en este caso os dígitos. Suerte
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

AYUDA en un Programa sencillo de JAVA

Publicado por susto (5 intervenciones) el 11/12/2014 00:36:44
Muchas Gracias Alex por tu respuesta.

Saludos
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

AYUDA en un Programa sencillo de JAVA

Publicado por Andrés (231 intervenciones) el 12/12/2014 07:11:40
necesitas un método qque reciba como entrada un long y como resultado de un long ó int

long sumaDigitos(long numero) {

//Establecer la suma de los dígitos a 0
long suma =0;

//Obligatoriamente es un tipo entero
String strNumber = Long.toString(numero);

//Recorrer la cadena obtenida
for(int i=0 ; i < strNumber.length(); i++) {
//strNumber.substring(i,i+1) va tomando cada digito
int digito = Integer.parseInt(strNumber.substring(i,i+1));
//se suman los dígitos
suma+=digito;
}

return suma;
}
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar