Que tal amigos soy nuevo aqui ojala y me puedan ayudar, lo que pasa es que tengo que hacer una calculadora en netbeans pero ya tengo mi codigo para que me sume, reste, multiplique, divida a la ves una cadena de numeros por ejemplo 1+2+3-5*9 este codigo realiza perfectamente esa operaciony me da el resultado correcto lo que sucede es que cuando digito numeros de 2 cifras ya no me da el resultado correcto por ejemplo 12+10+20/11, quisiera que miren mi caodigo y me digan que parte tengo que cambiar para hacer que si me sume numeros de 2 cifras no solo me sume y reste numeros de 1 cifra ojala me entiendas gracias y aqui esta mi codigo tiene algunos metodos de otra clase que instancie pero eso es para otra cosa solo quiero que me digan o de las 2 cifras y si quieren lo prueban gracias
Código Java:
Ver originalpackage calcu;
import java.util.Scanner;
/**
*
* @author Diego
*/
public class Calcu extends Operar {
public static void main
(String[] args
) {
Operar sc = new Operar();
Scanner dato
= new Scanner
(System.
in);
for(int r=0;r<1000;r++){
System.
out.
println("---------------------------------------------------------------------------------------------------------------------"); System.
out.
println("Ingrese cadena a operar: "); System.
out.
println("Si quiere calcular Seno escriba 'sen', Coseno escriba 'cos', Tangente escriba 'tan', Logaritmo escriba 'log', Raiz cuadrada escriba 'raiz'"); System.
out.
println("Presione '0' para salir"); System.
out.
println("---------------------------------------------------------------------------------------------------------------------"); String cadena
=dato.
nextLine(), num
="";
float suma = 0;
for(int i=0;i<cadena.length();i++){
if(cadena.charAt(i)=='-'){
i++;
suma
-= Integer.
parseInt(""+cadena.
charAt(i
));
}else{
if(cadena.charAt(i)=='+'){
i++;
suma
+= Integer.
parseInt(""+cadena.
charAt(i
));
}else{
if(cadena.charAt(i)=='*'){
i++;
suma
*= Integer.
parseInt(""+cadena.
charAt(i
));
}else{
if(cadena.charAt(i)=='/'){
i++;
suma
/= Integer.
parseInt(""+cadena.
charAt(i
));
}else{
if(cadena.equals("sen")){
i++;
sc.SENO();
}else{
if(cadena.equals("cos")){
i++;
sc.COSENO();
}else{
if(cadena.equals("tan")){
i++;
sc.TANGENTE();
}else{
if(cadena.equals("log")){
i++;
sc.LOGARITMO();
}else{
if(cadena.equals("raiz")){
i++;
sc.RAIZCUADRADA();
}else{
if(cadena.equals("0")){
}else
suma
+= suma
+= Integer.
parseInt(""+cadena.
charAt(i
)); }
}
}
}
}
}
}
}
}
}
System.
out.
println("El resultado de " +cadena
+ " es: " + suma
); }
}
}