Erste Schritte Vorschläge für mich zum Thema Punkt vor Strich ?

Hallo zusammen dank eure Hilfe bin ich ein ganzes Stück besser geworden und habe jetzt kein Problem sondern eine Frage an euch.
Ich wollte wissen wie ihr hauptsächlich die Punkt vor Strich Regel anwendet um einen Taschenrechner "zu lehren" wie er das machen soll. Ich habe hier mein kompletten Java-Quellcode falls es sich auf bestimmte Programme ändern könnte .
Java:
    import java.io.BufferedReader;
    import java.io.IOException;
    import java.io.InputStreamReader;
    import java.util.Scanner;

    public class Taschenrechner {  

	    public static void main(String[] args) throws IOException{	
				    InputStreamReader inStream = new InputStreamReader(System.in);
				    BufferedReader stdin = new BufferedReader(inStream);
				     
				    String eing;
				    double sum = 0;
				     
				    System.out.println("Geben Sie Ihre Rechnung ein: ");
				    eing = stdin.readLine();
				    int length = eing.length();
				     
				    char[] array = new char[10];
				    array = eing.toCharArray();
				     
				    Scanner scan = new Scanner(eing);
				    double x = scan.nextDouble();
				     
				     
				    while(scan.hasNext()){
				     
						    String op = scan.next();
						    double y = scan.nextDouble();
						     
						    if (op.equals("*")){
							    if (sum == 0)
							    sum = x*y;
							    else sum = sum*y;
						    }
						     
						    else if (op.equals("/")){
							    if(sum == 0)
							    sum = x/y;
							    else sum = sum/y;
						    }
						    
						    else if (op.equals("+")){
							    if (sum == 0)
							    sum = x + y;
							    else {
							    	sum = sum + y;
							    }
					    
						    }
				     
						    else if (op.equals("-")){
						    	if(sum == 0)
						    		sum = x - y;
						    	else sum = sum - x;
						    }	
				    }
			     
			    System.out.println("Das Ergebnis ist: " + sum);
	     
	    }
    }
Aber der Teil wo hauptsächlich alle Rechungen gemacht werden ist der hier
Java:
 Scanner scan = new Scanner(eing);
				    double x = scan.nextDouble();
				     
				     
				    while(scan.hasNext()){
				     
						    String op = scan.next();
						    double y = scan.nextDouble();
						     
						    if (op.equals("*")){
							    if (sum == 0)
							    sum = x*y;
							    else sum = sum*y;
						    }
						     
						    else if (op.equals("/")){
							    if(sum == 0)
							    sum = x/y;
							    else sum = sum/y;
						    }
						    
						    else if (op.equals("+")){
							    if (sum == 0)
							    sum = x + y;
							    else {
							    	sum = sum + y;
							    }
					    
						    }
				     
						    else if (op.equals("-")){
						    	if(sum == 0)
						    		sum = x - y;
						    	else sum = sum - x;
						    }	
				    }
Ich würde mich über eure Hilfe freuen und mich nochamls bedanken 🙂
Gruß .

P.S. Ich habe auf Google nichts gefunden, da ich finde dass die Codes, die dort angezeigt werden "nur" ein bisschen komplizierter sind als das was ich gerade mache und es kein Sinn macht etwas zu kopieren und nichts zu verstehen.
 
Bei meinem Rechner gehe ich mehrmals über die Aufgabe. Beim ersten Durchgang werden alle * und / ausgerechnet und die Ergebnisse zurückgetan. Beim zweiten Durchgang alle + und -.

Aber dazu muss die Aufgabe erst ordentlich geparst und in Zahlen und Zeichen getrennt sinnvoll gespeichert werden.
 

Zurück
Oben