Hallo allerseits,
ich lerne seit ein paar Wochen Java, bin also noch ziemlicher Anfänger und leider habe ich bereits ein Problem mit den Methoden. In einer Übungsaufgabe sollte ein einfacher Taschenrechner programmiert werden. Eingaben über Eingabedialogfenster und 4 Methoden zur Berechnung von +,-,*, und /. Die Berechnungen sollen nur in der Javakonsole mit Print() ausgegeben werden. Den Teil habe ich fertig und würde mich freuen wenn ihr mal schauen könntet ob sich da noch Fehler eingeschlichen haben.
Diese Aufgabe wird nun erweitert und dabei bräuchte ich eure Hilfe. Ich möchte jetzt nicht das ihr meine Aufgabe löst, sondern ich brauche Hilfe dabei zu verstehen wie ich das lösen muss.
Die Aufgabenstellung ist dabei folgende:
Erweiterung des Taschenrechners so, dass neben der Ausgabe der einzelnen Rechenoperationen, am Ende zusätzlich die Ergebnisse aller Rechenoperationen gleichzeitig auf dem Bildschirm ausgegeben werden können. Diese Funktionalität soll ebenfalls als Methode erstellt werden.
Ich weiß einfach nicht WIE ich das Programm dazu bringe mir ein Eingabedialogfenster NACH der Ausgabe der gewählten Rechenoperation zu erstellen. Denn die Aufgabe besagt ja, das alle Rechenoperationen, wenn gewünscht, am Ende angezeigt werden sollen. Oder verstehe ich die Aufgabe falsch?
Der Code für Teil 1 sieht so aus:
Für Teil 2 hab ich bereits, seit Tagen, alles mögliche probiert und zur Zeit gar keine Idee mehr . Ich wäre sehr dankbar wenn jemand einen hilfreichen Denkanstoß oder ein Beispiel für mich hätte, um diesen verflixten Verständnis-Blackout weg zu bekommen.
MfG
ein recht verzweifelter
JavaNeuling
ich lerne seit ein paar Wochen Java, bin also noch ziemlicher Anfänger und leider habe ich bereits ein Problem mit den Methoden. In einer Übungsaufgabe sollte ein einfacher Taschenrechner programmiert werden. Eingaben über Eingabedialogfenster und 4 Methoden zur Berechnung von +,-,*, und /. Die Berechnungen sollen nur in der Javakonsole mit Print() ausgegeben werden. Den Teil habe ich fertig und würde mich freuen wenn ihr mal schauen könntet ob sich da noch Fehler eingeschlichen haben.
Diese Aufgabe wird nun erweitert und dabei bräuchte ich eure Hilfe. Ich möchte jetzt nicht das ihr meine Aufgabe löst, sondern ich brauche Hilfe dabei zu verstehen wie ich das lösen muss.
Die Aufgabenstellung ist dabei folgende:
Erweiterung des Taschenrechners so, dass neben der Ausgabe der einzelnen Rechenoperationen, am Ende zusätzlich die Ergebnisse aller Rechenoperationen gleichzeitig auf dem Bildschirm ausgegeben werden können. Diese Funktionalität soll ebenfalls als Methode erstellt werden.
Ich weiß einfach nicht WIE ich das Programm dazu bringe mir ein Eingabedialogfenster NACH der Ausgabe der gewählten Rechenoperation zu erstellen. Denn die Aufgabe besagt ja, das alle Rechenoperationen, wenn gewünscht, am Ende angezeigt werden sollen. Oder verstehe ich die Aufgabe falsch?
Der Code für Teil 1 sieht so aus:
Java:
import javax.swing.*;
public class Java_taschenrechner {
/**
* Methode addition addiert die übergebenen Eingaben in den Variablen eingabeZahl1 und eingabeZahl2
* liefert dann das Ergebnis zurück
*
* Methoden subktraktion,division und multiplikation verfahren ebenso,
* entsprechend den ihnen zugewiesenen Rechenarten
*
* Um Kommazahlen abzufangen bzw. zu ermöglichen wurde der Typ double verwendet
*/
// Methode Addition
static double addition(double eingabeZahl1, double eingabeZahl2)
{
return (eingabeZahl1 + eingabeZahl2);
}
// Methode Subtraktion
static double subtraktion(double eingabeZahl1, double eingabeZahl2)
{
return (eingabeZahl1 - eingabeZahl2);
}
// Methode Division
static double division(double eingabeZahl1, double eingabeZahl2)
{
return (eingabeZahl1 / eingabeZahl2);
}
// Methode Multiplikation
static double multiplikation(double eingabeZahl1, double eingabeZahl2)
{
return (eingabeZahl1 * eingabeZahl2);
}
/* ## Hier versuche ich die geforderte Methode für Teil 2 zu erstellen ##
*
* methode zur Auswahl anzeige der restlichen Rechenoperationen
*/
public static boolean alleAnzeigen (char anzeigeWahl)
{
if ((anzeigeWahl == 'j') || (anzeigeWahl == 'J'))
{
return true;
}
else
return false;
}
public static void main(String[] args) {
/**
* @param args
* double, String, char
*/
// Vereinbarung der Variablen
double eingabeZahl1, eingabeZahl2; // zur Aufnahme der eingegebenen Zahlen
String eingabeRechenoperator; // zur Aufnahme der gewünschten Rechenoperation als Zeichenkette
char rechenoperator; // zur Aufnahme des eingegebenen,einzelnen Zeichens für den Rechenoperator
//Einlesen der Werte und des Rechenoperators
eingabeZahl1 = Double.parseDouble(JOptionPane.showInputDialog("Geben Sie bitte ihren ersten Wert ein:\nHinweis:\n Benutzen Sie bitte einen punkt \" . \" als Trennzeichen wenn Sie keine ganze Zahl eingeben"));
eingabeRechenoperator = JOptionPane.showInputDialog("Geben Sie bitte + , - , / oder * für die gewünschte Rechenoperation ein: ");
rechenoperator = eingabeRechenoperator.charAt(0); // nehme nur das erste (eingegebene) Zeichen
eingabeZahl2 = Double.parseDouble(JOptionPane.showInputDialog("Geben Sie bitte ihren zweiten Wert ein:\nHinweis:\n Benutzen Sie bitte einen punkt \" . \" als Trennzeichen wenn Sie keine ganze Zahl eingeben"));
// die Auswertung von rechenoperator in einer switch - case Abfrage
// case +, -, / und * mit dem entsprechenden Aufruf,
// der je nach gewähltem Rechenoperator dazugehörenden Methode
// und abschließender Ausgabe des Ergbnisses auf dem Bildschirm.
switch (rechenoperator) // Auswertung des eingegebenen Rechenoperators
{
case '+': // Rechenoperation Addition gewählt
// Werte an die entsprechende Methode weitergeben und ausgabe des ergebnisses
System.out.print("Das Ergebnis von " + eingabeZahl1 + " + " + eingabeZahl2 + " ist " + addition(eingabeZahl1,eingabeZahl2));
break;
case '-': // Rechenoperation Subtraktion gewählt
// Werte an die entsprechende Methode weitergeben und ausgabe des ergebnisses
System.out.print("Das Ergebnis von " + eingabeZahl1 + " - " + eingabeZahl2 + " ist " + subtraktion(eingabeZahl1,eingabeZahl2));
break;
case '/': // Rechenoperation Division gewählt
// Werte an die entsprechende Methode weitergeben und ausgabe des ergebnisses
System.out.print("Das Ergebnis von " + eingabeZahl1 + " / " + eingabeZahl2 + " ist " + division(eingabeZahl1,eingabeZahl2));
break;
case '*': // Rechenoperation Multiplikation gewählt
// Werte an die entsprechende Methode weitergeben und ausgabe des ergebnisses
System.out.print("Das Ergebnis von " + eingabeZahl1 + " * " + eingabeZahl2 + " ist " + multiplikation(eingabeZahl1,eingabeZahl2));
break;
default:
// wenn keine Rechenoperation gewählt wurde, Fehler ausgeben
System.out.println("Sie haben keine gültige Rechenoperation ausgewählt! ");
}
// Einlesen um auch die anderen Rechenoperationen anzeigen zu lassen
//### Hier ist der Aufruf der von JOptionPane und methode für Teil 2 ###
anzeigeWahlEinlesen = JOptionPane.showInputDialog("Möchten Sie sich die Ergebnisse aller Rechenarten anzeigen lassen?\nGeben Sie \"j\" für Ja oder \"n\" für Nein ein: ");
anzeigeWahl = anzeigeWahlEinlesen.charAt(0); // nehme nur das erste (eingegebene) Zeichen
if (alleAnzeigen (anzeigeWahl)== true)
{
System.out.print("\n\nDas Ergebnis von " + eingabeZahl1 + " + " + eingabeZahl2 + " ist " + addition(eingabeZahl1,eingabeZahl2));
System.out.print("\nDas Ergebnis von " + eingabeZahl1 + " - " + eingabeZahl2 + " ist " + subtraktion(eingabeZahl1,eingabeZahl2));
System.out.print("\nDas Ergebnis von " + eingabeZahl1 + " / " + eingabeZahl2 + " ist " + division(eingabeZahl1,eingabeZahl2));
System.out.print("\nDas Ergebnis von " + eingabeZahl1 + " * " + eingabeZahl2 + " ist " + multiplikation(eingabeZahl1,eingabeZahl2));
}
System.exit(0);
}
}
Für Teil 2 hab ich bereits, seit Tagen, alles mögliche probiert und zur Zeit gar keine Idee mehr . Ich wäre sehr dankbar wenn jemand einen hilfreichen Denkanstoß oder ein Beispiel für mich hätte, um diesen verflixten Verständnis-Blackout weg zu bekommen.
MfG
ein recht verzweifelter
JavaNeuling
Zuletzt bearbeitet von einem Moderator: