私が見つけた問題の1つは、+、 - 、*、/を比較することができないということです。ヘルプ逆ポリッシュ表記(Java)の問題
CODEのためのTHX:
import java.util.Scanner;
public class Question2 {
public static void main(String args[]){
Scanner scan = new Scanner(System.in);
double array[] = new double[20];
System.out.print("Enter sum: ");
String sum = scan.nextLine();
getValue(sum, array, 0);
System.out.print(array[0]);
}
public static void getValue(String input, double array[], int poi){
int counter = 0;
char nextValue = ' ';
String value = "";
double num = 0;
boolean checkDub = true;
do{
value = value + input.charAt(counter);
counter ++;
nextValue = input.charAt(counter);
}while(nextValue != ' ');
try {num = Integer.parseInt(value);}
catch (Exception e) {
checkDub = false;
double l2 = array[poi];
poi--;
double l1 = array[poi];
if(value.equals("+")){ array[poi] = l1 + l2;} // <--- comparing problem?
else if(value.equals("-")){ array[poi] = l1 - l2;}
else if(value.equals("*")){ array[poi] = l1 * l2;}
else if(value.equals("/")){ array[poi] = l1/l2;}
else{System.out.println("Error");}
}
if(checkDub = true){
array[poi] = num;}
String nextInput = input.substring(counter);
getValue(nextInput, array, poi + 1);
}
}
'宿題 'タグ? –
再フォーマットされたコード。間違っている場合は元に戻してください。 – trashgod