Einfacher Rechner (für mich nicht so einfach)

Npkt

Neues Mitglied
Hallo,
Ich möchte eigentlich einen kleinen Konsolen Rechner schreiben der mir wenn ich einen Buchstaben eingeben ein Fehler anzeigt und mich wieder an den anfang von der while schleife bring und mich nochmal abfragt.
schon mal danke für eure Hilfe :D

Das Problem ist das wenn ich den Code Compiliere und einen Buchstaben anstatt eine Zahl eingebe bricht das Programm ab und zeigt mir eine Exception meldung.
Ich möchte aber das wenn jemand einen buchstaben eingibt ér darauf hingewiesen wird und die abfrage neu startet.

Java:
import java.io.*;

public class AN1 {
	String streing;
	String streing2; 
	int eing = 0;
	int eing2 = 0;
	int summe = 0;
	int differenz = 0;
	int produkt = 0;
	
	
	public static void main(String[] args) {
		AN1 anw = new AN1();
		anw.rechne();	
	}
	public void rechne() {
		System.out.println("Geben Sie zwei Ganzzahlen ein");
		while (eing > 0 && eing2 > 0); {
			try {
			
          BufferedReader input = new BufferedReader (new InputStreamReader(System.in)); 
          streing = input.readLine();
          eing = Integer.parseInt(streing);
          System.out.println("Ihre erste eingabe ist: " + eing + " Bitte geben Sie jetzt die nächste Zahl ein");
		  
		  BufferedReader input2 = new BufferedReader (new InputStreamReader(System.in)); 
          streing2 = input2.readLine();
          eing2 = Integer.parseInt(streing2);
          System.out.println("Ihre zweite Eingabe ist: " + eing2 );
			 
			} catch (IOException e) {
			System.out.println("Bitte geben Sie nur Ganzzahlen ein"); }	
			
					}	
			summe = eing + eing2;
			differenz = eing - eing2;
			produkt = eing * eing2;
			
			System.out.println(eing + " + " + eing2 + " = " + summe + "\n");
			
			System.out.println(eing + " - " + eing2 + " = " + differenz + "\n");
			
			System.out.println(eing + " * " + eing2 + " = " + produkt + "\n");
	
	}
}
 
Zuletzt bearbeitet:

Joose

Top Contributor
schon mal danke für eure Hilfe :D

Wir können leider nicht helfen wenn du uns verschweigst wo das Problem ist.
Wenn du ein Problem hast musst du natürlich auch diese Problem genauer beschreiben und auch entsprechend fragen.

Einfach nur sagen was das Programm machen sollte und Code posten hilft niemanden.
Keiner ist gewillt sich erst auf die Suche nach dem Problem zu machen.
 

Virot

Mitglied
Hallo Npkt,

der Quellcode ist etwas umständlich.

Wieso speicherst du alles in String und wandelst es dann in Integer um?
Du kannst doch direkt als Integer speichern.

z.b.
Java:
int a = 0;
Scanner scan = new Scanner(System.in);
			a = scan.nextInt();

Wie lautet die Fehlermeldung?

Java:
AN1 anw = new AN1();
anw.rechne();

Kannst du dir eigentlich sparen solang du eh nur in der Main Methode arbeitest.

Unter "Catch" sollte nur die Fehlermeldung stehen.
Und unter "Try" steht eigentlich der Code bei dem du einen Fehler erwartest.

Bsp.:
Java:
int[] iException = {1, 2, 3};

		try{
// Hier könnte dein Fehler entstehen
			for(int i = 0; i < 6; i++){    // in diesem Beispiel entsteht hier der Fehler da das Array eine Länge von 3 hat
                                                               // aber er 6 mal durchlaufen soll.
			System.out.println("Nummer " +i +" lautet: " +iException[i]);
			}
					
		}catch(ArrayIndexOutOfBoundsException ex){
// Hier wird dein Fehler (falls vorhanden) angezeigt.
			System.out.println("Runtime Fehler");
		}
[/Java]

lg
 
Zuletzt bearbeitet:

Npkt

Neues Mitglied
Das programm springt immer wieder zum ende wenn ich Buchstaben anstatt zahlen eingebe.
Ich möchte aber das das Programm mich nochmal auffordert Zahlen einzugeben.
Und danke für den tipp mit Scanner :)

Wenn ich es ausführe und Buchstaben eingebe:

Geben Sie zwei Ganzzahlen ein
hi
Bitte geben Sie nur Ganzzahlen ein
0 + 0 = 0

0 - 0 = 0

0 * 0 = 0
 

Virot

Mitglied
Hallo Npkt,

Probier es doch einfach mal in der Form(nicht gut aber Verständlich).

[Java]
boolean Var = true;

do{
try{
summe = eing + eing2;
differenz = eing - eing2;
produkt = eing * eing2;

System.out.println(eing + " + " + eing2 + " = " + summe + "\n");

System.out.println(eing + " - " + eing2 + " = " + differenz + "\n");

System.out.println(eing + " * " + eing2 + " = " + produkt + "\n");
Var == false;

}

}catch(Exception ex){
System.out.println("Bitte nur Zahlen eingeben!!!!!");
Var = true;
}
}while( Var == true);
[/code]

Wie gesagt das ist nicht schön und man macht es nicht so aber es ist verständlich und funktioniert.

Noch mal als Hinweis:

Unter Try kommt der Code wo der Fehler erwartet wird.
Kommt kein Fehler überspringt er auch Catch.
Das bedeutet das unter Catch nur sachen zu stehen haben die Passieren sollen wenn er nen Fehler hat.
Deine Berechnung soll ja laufen wenn alles gut ist.

lg
 
Zuletzt bearbeitet:

Saheeda

Top Contributor
@npkt

ich vermute, du bekommst eine NumberFormatException? Die wird geworfen, wenn ein String nicht in eine Zahl geparst werden kann. Du fängst aber nur eine IOException, deswegen crashts und schreibt keine Fehlermeldung.

Sorry, wenn ich mich vertippt/verguckt hab, bin grad per Handy online.
 
Ähnliche Java Themen
  Titel Forum Antworten Datum
P Einfacher Rechner Java Basics - Anfänger-Themen 2
R Einfacher Taschenrechner mit Eclipse Java Basics - Anfänger-Themen 3
M Einfacher Taschenrechner Java Basics - Anfänger-Themen 2
P Einfacher regulärer Ausdruck (RegEx) für E-Mail-Adressen Java Basics - Anfänger-Themen 2
EinNickname9 Denkfehler bei einfacher Schleife Java Basics - Anfänger-Themen 83
T Problem mit Lehrzeichen und String bei einfacher Chiffre Java Basics - Anfänger-Themen 8
N Methoden Einfacher SekundenTimer/Stopuhr in Java Java Basics - Anfänger-Themen 2
X Streams und Ausgabe - lässt sich das einfacher schreiben oder schöner schreiben? Java Basics - Anfänger-Themen 5
H wie mehrere variablen in einfacher for-schleife? Java Basics - Anfänger-Themen 2
? Klassen einfacher Fehler in einem Java Programm. Java Basics - Anfänger-Themen 5
V Einfacher vergleich von Arrays geht schief Java Basics - Anfänger-Themen 2
K Seltsames Ergebnis in Netbeans bei einfacher Multiplikation Java Basics - Anfänger-Themen 5
O Ein einfacher Chatbot (simuliert chat) Java Basics - Anfänger-Themen 7
R Einfacher Regex Java Basics - Anfänger-Themen 3
L Einfacher Methodenaufruf vs. Objekt Java Basics - Anfänger-Themen 4
K Einfacher random namen weitergeben Java Basics - Anfänger-Themen 4
A Lässt sich dieser Ausdruck irgendwie einfacher schreiben? Java Basics - Anfänger-Themen 4
H Einfacher Editor, Einfache Handelsanweisungen Java Basics - Anfänger-Themen 2
H Geht dieser Code noch einfacher (try catch finally) Java Basics - Anfänger-Themen 7
P Geht dieser Code noch einfacher? Java Basics - Anfänger-Themen 16
R Einfacher Timer geht nicht Java Basics - Anfänger-Themen 7
M Einfacher Timer ;) Java Basics - Anfänger-Themen 15
M Einfacher Swing Wizard Java Basics - Anfänger-Themen 3
El_Lobo Methoden Zu viele Getter- und Settermethoden - geht das einfacher? Java Basics - Anfänger-Themen 3
P falsches ergebnis bei einfacher berechnung Java Basics - Anfänger-Themen 3
M Einfacher Fenster-Ablauf Java Basics - Anfänger-Themen 5
M Gittermuster mit Stringbuilder und einfacher Schleife erstellen Java Basics - Anfänger-Themen 19
T Collections Werte aus einer HashMap auslesen, oder gehts auch einfacher ? Java Basics - Anfänger-Themen 6
D Code einfacher,eleganter programmieren Java Basics - Anfänger-Themen 24
F Datentypen Welchen Wert hat ein einfacher Datentyp nach der Deklaration? Java Basics - Anfänger-Themen 6
C einfacher Link zu *.html Datei möglich? Java Basics - Anfänger-Themen 4
Hindi93 Einfacher Code funktioniert nicht... Java Basics - Anfänger-Themen 6
T Einfacher Kalender Java Basics - Anfänger-Themen 17
B Frage zu einfacher Rechnung Java Basics - Anfänger-Themen 3
B Hilfe bei einfacher Funktion - Possible loss of precision Java Basics - Anfänger-Themen 2
G Einfacher Anfang mit Hibernate Java Basics - Anfänger-Themen 4
M ein einfacher button.. ich verzweifel...... Java Basics - Anfänger-Themen 41
F Von int zu double bei einfacher Rechnung Java Basics - Anfänger-Themen 2
C Einfacher Installer Java Basics - Anfänger-Themen 2
Chucky Einfacher Taschenrechner Verbesserungsvorschläge Java Basics - Anfänger-Themen 13
G Problem mit einfacher For-Schleife und Double Wert Java Basics - Anfänger-Themen 4
D Probleme bei einfacher Rechnung Java Basics - Anfänger-Themen 3
N BMI Rechner Was haltet ihr von dem Code habt ihr Verbesserungsvorschläge weil design teschnisch ist das nicht das geilste würde das gerne überarbeiten Java Basics - Anfänger-Themen 12
Renjiroo Java Bmi Rechner mit Methoden Java Basics - Anfänger-Themen 4
T BMI Rechner fehlerhaft Java Basics - Anfänger-Themen 18
D Primzahlen Rechner nach Eratostenes von Kyrene Algorithmus Java Basics - Anfänger-Themen 2
Animal-Mother BMI Rechner erstellen für W/M Java Basics - Anfänger-Themen 7
Alan6 Java Editor BMI Rechner Java Basics - Anfänger-Themen 7
Nerdinfekt BMI Rechner, fehler beim Zurückgeben des Strings? Java Basics - Anfänger-Themen 2
M Rechner programmieren Java Basics - Anfänger-Themen 3
Z BMI-Rechner Java Basics - Anfänger-Themen 1
F Trinkgeld Rechner und Promillenrechener Hilfe Java Basics - Anfänger-Themen 3
R java.lang.ArrayIndexOutOfBoundsException: 0 Rechner Error Java Basics - Anfänger-Themen 4
S Erste Schritte Java GUI - Rechner erstellen Java Basics - Anfänger-Themen 4
$ Multiplikations-Rechner mit while Schleife Java Basics - Anfänger-Themen 8
J double_Problem im ZinsesZins Rechner Java Basics - Anfänger-Themen 33
K (Taschen)Rechner Java Basics - Anfänger-Themen 8
M Abitur-Noten-Rechner Java Basics - Anfänger-Themen 2
G Welche Java-Version auf meinem Rechner? Java Basics - Anfänger-Themen 2
B Strategy Pattern - Rechner Java Basics - Anfänger-Themen 6
thet1983 rechner anfaengerfehler? Java Basics - Anfänger-Themen 10
B BMI Rechner Java Basics - Anfänger-Themen 2
H DriveByZero Exception - BMI-Rechner Java Basics - Anfänger-Themen 12
B Co2 rechner hilfe beim programmieren Java Basics - Anfänger-Themen 10
P Bitte um hilfe bei einfachem Rechner Java Basics - Anfänger-Themen 7
B Std-Serialisierung - Speichern/Laden geht nur auf einem Rechner Java Basics - Anfänger-Themen 17
C Rechner Java Basics - Anfänger-Themen 19
B Verbindung zu einen anderen Rechner Java Basics - Anfänger-Themen 2
N Datenaustausch zweier rechner Java Basics - Anfänger-Themen 4
M BMI-Rechner NumberFormatException Java Basics - Anfänger-Themen 30
Jats Kosinussatz-Rechner Java Basics - Anfänger-Themen 9
Haave Postfix-Rechner: mehrere math. Operationen nacheinander ausführen Java Basics - Anfänger-Themen 8
C Bmi rechner programmieren Java Basics - Anfänger-Themen 72
B JavaWebStart - Anwendung läuft nur auf einem Rechner Java Basics - Anfänger-Themen 6
P UPN Rechner Java Basics - Anfänger-Themen 1
F Upn-Rechner Java Basics - Anfänger-Themen 15
B mit Wecker den Rechner aus Standby/Ruhemodus holen Java Basics - Anfänger-Themen 19
R Jar Datei läuft auf neuem Rechner nicht mehr Java Basics - Anfänger-Themen 15
Developer_X Applet auf lokalem Rechner mit der EingabeAufforderung Starten Java Basics - Anfänger-Themen 44
S Was ist falsch an meinem Rechner? Java Basics - Anfänger-Themen 7
M externes Programm auf anderen Rechner ausführen lassen Java Basics - Anfänger-Themen 2
kulturfenster Wie implementiert man einen Rechner in Java? Java Basics - Anfänger-Themen 5
kulturfenster Rechner und ActionListener Java Basics - Anfänger-Themen 11
C DM -> Euro Rechner aber nur mit Operanden des Typs intege Java Basics - Anfänger-Themen 12
G Java Rechner Java Basics - Anfänger-Themen 10
G frage bluej für bmi rechner programmieren Java Basics - Anfänger-Themen 5
T Rechner-Name abfragen Java Basics - Anfänger-Themen 6
C Problem mit dem Rechner Java Basics - Anfänger-Themen 4
G Rechner aus ! Java Basics - Anfänger-Themen 5
M Exel-Rechner in Java ausgeben Java Basics - Anfänger-Themen 13
N Java Rechner Java Basics - Anfänger-Themen 3
D Java Rechner und Einlesen Problem (mit hasNext) Java Basics - Anfänger-Themen 2
W Rechner von quadratzahlen ! fehler Java Basics - Anfänger-Themen 4
P Rechner ^^ Java Basics - Anfänger-Themen 10
K BMI Rechner - wo ist der Fehler? Java Basics - Anfänger-Themen 4
D Rechner programmieren Java Basics - Anfänger-Themen 5
P Mediacenter Userinterface auf langsamem Rechner Java Basics - Anfänger-Themen 5
M Windows Projekt auf Linux Rechner Java Basics - Anfänger-Themen 2
B komische NumberFormatException beim DezimalToBinär-Rechner Java Basics - Anfänger-Themen 4
lan2711 Class Dateien auf anderen Rechner zum Laufen kriegen. Java Basics - Anfänger-Themen 5

Ähnliche Java Themen

Neue Themen


Oben