Kann mir jemand die unten angegebene Aufgabenstellung in Java vorprogrammieren und erklären?
Erstellen Sie eine weitere Klasse „TaschenrechnerIfThenElse“ in Ihrem Projekt und erstellen Sie auch hier eine main-Methode.
Fügen Sie in dieser die folgenden Anweisungen ein:
1. Geben Sie zunächst „Dies ist ein primitiver Taschenrechner.“ auf der Konsole aus.
2. Lesen Sie anschließend zwei int-Werte (die Operanden) und einen char-Wert (den Operator) ein. Verwenden Sie sinnvolle Werte als Parameter für die entsprechenden Methoden der Klasse IOTools.
3. Definieren Sie eine int-Variable „dasEndergebnis“ und initialisieren Sie diese mit dem Wert 0.
4. Überprüfen Sie mit Hilfe von If-Else-Konstrukten, ob der eingelesene char-Wert einem der Operatoren +, -, *, / oder % entspricht. Geben Sie eine entsprechende Fehlermeldung aus, falls dies nicht der Fall ist. Bei gültigen Eingaben berechnen Sie den entsprechenden Wert (Operand1 Operator Operand2) und weisen Sie diesen der Variable „dasEndergebnis“ zu.
5. Geben Sie eine Ausgabe der Form „Et voilà: Operand1 Operator Operand2 = dasErgebnis“ auf der Konsole aus.
Das ist lesbarer.
2 Antworten
import java.util.Scanner;
//Anstatt "TestMain" deinen Methoden Namen Einfügen
public class TestMain {
public static void main(String[] args) { //Aufruf der main Methode (Wird IMMER zuerst aufgerufen)
int eins, zwei; //deklariert beide Ints
char c; //Deklariert ein char
Scanner eingabewert = new Scanner(System.in); //Erstellst Scanner der die Inputs in die Konsole einließt
//Einlesen von Zahl 1 und 2
System.out.println("Geben sie Zahl 1 ein: "); //Ausgabe in Konsole
eins= eingabewert.nextInt(); //Übergabe von eingabe in Variable [Das .nextInt() sagt dem Programm das er die eingabe als Integer nehmen soll]
System.out.println("Geben sie Zahl 2 ein: "); //Ausgabe in Konsole
zwei= eingabewert.nextInt(); //Übergabe von eingabe in Variable
System.out.println("Geben sie Opperator ein (+-*/%) : ");//Ausgabe in Konsole
c= eingabewert.next().charAt(0); //Über gabe von char an eingabe selle 0 = also erstes symbol
int dasEndergebnis =0; //Deklaration und initialisierung
//*************Überprüft welche eingabe gemacht wurde**********************
if(c=='+') { //Wenn c (Also der gespeicherte Operator) Ist Gleich wie das Symbol +
dasEndergebnis=eins + zwei; //Berechnung
}else if(c=='-'){ //Wenn c (Also der gespeicherte Operator) Ist Gleich wie das Symbol -
dasEndergebnis=eins - zwei; //Berechnung
}else if(c=='*') { //Wenn c (Also der gespeicherte Operator) Ist Gleich wie das Symbol *
dasEndergebnis=eins * zwei; //Berechnung
}else if(c=='/') { //Wenn c (Also der gespeicherte Operator) Ist Gleich wie das Symbol /
dasEndergebnis=eins / zwei; //Berechnung
}else if(c=='%'){ //Wenn c (Also der gespeicherte Operator) Ist Gleich wie das Symbol %
dasEndergebnis=eins % zwei; //Berechnung
}else {
System.out.println("Fehler kein Operator"); //Fehlermeldung
System.exit(0); // Bricht das Programm ab wenn Fehlermeldung ausgegeben wird
}
//**************************************************************************
//Wird nur ausgeführ wenn ein Opperator benutzt wurde
//==============================================================================
//Ausgabe wenn alles geklappt hat mit dem + wird nicht gerechnet sonder es heißt weitere zeichen anhängen
System.out.println("Et voilá: "+ eins +" " + c +" " + zwei+ " = "+ dasEndergebnis );
}
}
@GreenAnswer
Danke! Bei Fragen melde ich mich nochmal. Ich weiss deine Mühe wert zu schätzen.
@GreenAnswer
Hey GreenAnswer, hast du auch eine Möglichkeit, wie man die Eingabe mit den IOTools macht?
GreenAnswer
12.11.2020, 00:06
@servusTV2704
mit der Methode readInteger() und für den char halt readChar()
aber am besten stellst du spezifische fragen dann kann man es besser erklären :)
Nutzer, der sehr aktiv auf gutefrage ist
wenn du das grundgerüst nicht hinbekommen hast, empfehle ich mal zu zuhören und mitzumachen im unterricht etc .
das ist wirklich genau so zu machen wie es da steht , das man nicht alles gleich richtig macht ok , aber gar ncihts liefern und quasi hier dein nicht aufpassen auf uns abzuwälzen weil du einfach faul bist . sorry , ich bin bei sowas raus .
Ich denke mal das soetwas gemeit war :)