Java - AYUDA..TENGO PLAZO HASTA LAS 10PM

 
Vista:

AYUDA..TENGO PLAZO HASTA LAS 10PM

Publicado por Andres (39 intervenciones) el 11/04/2007 18:36:13
HOLA...MIREN TENGO ESTE PROBLEMA....EL PROFESOR NOS PIDIO..QUE EL USUARIO INGRESARA UN STRING DE SUMA Y LUEGO ME MUESTRE LA SUMA..

POR EJEMPLO : 2+3+5(SE INGRESA TODA LA CADENA EN UNA SOLA VEZ)
RESULTADO 10

O POR EJEMPLO 20+30
RESULTADO 50

AQUI LES MANDO EL CODIGO......ME DIJERON QUE EL PROBLEMA..QUE TENGO ES POR QUE NO SE HACER BIEN LAS CONVERSIONES..

//ESTE SOLO ME CUMPLE..SI DIGITO SUMAS DE UNA CIFRA..PERO SI DIGITO POR EJEMPLO
20+30 NO ME DA....Y ESO NECESITO...

class Trabajo
{
public static void main (String a[])
{

String strCa="2+3+5+7"; //ESTO LO COLOQUE ASI ..PARA PROBARLO..
int acum=0;
int x=0;
String mientras="";
int l=0;
for(int i=0;i<strCa.length();i++)
{
char c=strCa.charAt(i);
if(c !='+')
{
x=Integer.parseInt(strCa.charAt(i)+"");


}

else{


acum=acum+x;
}
}
System.out.println(acum+x);
}

}
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

RE:AYUDA..TENGO PLAZO HASTA LAS 10PM

Publicado por Mario (622 intervenciones) el 11/04/2007 19:33:43
hay amigo todavia estas chavo, es raro que realicen tus programas ya que este es un foro pero bueno hay te va:

import java.util.StringTokenizer;

public class SumAnalizer {

public static void main(String args[]) {

String cad="2+3+5+7";

StringTokenizer token=new StringTokenizer(cad,"+");
int sum=0;
while(token.hasMoreTokens()) {
int num=Integer.parseInt((String)token.nextElement());
sum=sum+num;

}
System.out.println(sum);

}

}

Saludos comunidad open source
Neos Software Inc 2007
www.geocities.com/neos_software
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
sin imagen de perfil

RE:AYUDA..TENGO PLAZO HASTA LAS 10PM

Publicado por camus (240 intervenciones) el 11/04/2007 19:41:15
Hola, bueno envista de que almenos has intentado resolver el problema te dejo una solución a tu problema.
Primero deberas descargar el jar de apache regexp el cual sirve para trabajar con expresiones regulares de la siguiente dirección:

http://jakarta.apache.org/site/downloads/downloads_regexp.cgi

ahora las clase java:
public class SumaNumerosRegex {

public static void main(String args[]){
String array[];
String cadena = "32+78+81+9+59";
String exp="\\+";
int suma=0;
array =getSplit(exp,cadena); //hace un split con una ER
for(int i=0;i<array.length;i++){
System.out.println(array[i]);
suma = suma + Integer.parseInt(array[i]);
}
System.out.println("Suma= "+ suma);
}
/**
* @author Hugo Hidalgo
* @version 1.0
*
* Este metodo es el encargado de realizar
* un split (quita el o los caracteres se
* gun una ER) referente a una expresion R
* y la cadena y retorna un array de tipo
* String[]
* @param (String expresionR,String cadena)
* @return String[]
*/
public static String[] getSplit(String expresionR,String cadena){
String array[]=null;
RE pattern= new RE(expresionR);
array = pattern.split(cadena);

return array;
}
}
el resultado sera el siguiente en consola:
32
78
81
9
59
Suma= 259

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