C++ - Lösung zur Ausgabe Division durch 0 nicht möglich, wenn ganzeZahl2 = 0

Baker

Mitglied
Hallo,

wie schon der Titel sagt möchte ich im folgenden Code, wenn ich einen Wert für die ganzeZahl1 eingebe und einen für ganzeZahl2, der 0 ist, dann auch die Ausgabe im Terminal bekommen, dass es nicht möglich ist, das klappt jedoch nicht mit meinem Code. Was habe ich da falsch gemacht?

Wenn möglich bitte erstmal nur einen Ansatz geben, da ich selbst darauf kommen möchte.

1634980881792.png
 
Beste Antwort
Naja, das klappt schon. Du wolltest aber nicht die ganze Lösung. Du musst natürlich dafür sorgen, dass die anderen Berechnungen nicht ausgeführt werden, wenn die Bedingung trifft. Also entweder per return oder else.

Oneixee5

Top Contributor
Naja, das klappt schon. Du wolltest aber nicht die ganze Lösung. Du musst natürlich dafür sorgen, dass die anderen Berechnungen nicht ausgeführt werden, wenn die Bedingung trifft. Also entweder per return oder else.
 
Beste Antwort

Baker

Mitglied
Naja, das klappt schon. Du wolltest aber nicht die ganze Lösung. Du musst natürlich dafür sorgen, dass die anderen Berechnungen nicht ausgeführt werden, wenn die Bedingung trifft. Also entweder per return oder else.
Ah stimmt, danke. Ich hatte noch ein weiteres Problem und zwar habe ich in der Bedingung (ganzeZahl2 = 0) anstatt (ganzeZahl2 == 0) geschrieben. Aber jetzt funktioniert es.

1634983206731.png
 
K

kneitzel

Gast
Das dürfte so aber vermutlich immer noch nicht ganz klappen. Das letzte if wird immer ausgeführt. (Es fehlt ein else!)

Und von der Logik her macht es Keinen Sinn zu prüfen ob etwas zutrifft um dann im else das Gegenteil zu prüfen. Der Rest ist 0 oder der Rest ist nicht 0. Wenn du das Erste geprüft hast, dann reicht ein else ohne neue Prüfung.
 

Baker

Mitglied
Das dürfte so aber vermutlich immer noch nicht ganz klappen. Das letzte if wird immer ausgeführt. (Es fehlt ein else!)

Und von der Logik her macht es Keinen Sinn zu prüfen ob etwas zutrifft um dann im else das Gegenteil zu prüfen. Der Rest ist 0 oder der Rest ist nicht 0. Wenn du das Erste geprüft hast, dann reicht ein else ohne neue Prüfung.
Ja, hast recht. Hab es nochmal modifiziert:
1635023006363.png
 
K

kneitzel

Gast
Ich würde die return bei den printf auch noch raus nehmen.

Zumindest macht es aus meiner Sicht so logisch keinen Sinn:
Du bist in der main Funktion, der Rückgabe Wert wird auch der Exit Code sein.

Willst Du einen Exit Code haben, der angibt, wie viele Zeichen Du in dem letzten printf ausgegeben hast? Eigentlich willst Du doch nur die Ausgabe machen und gut ist es.
 

mihe7

Top Contributor
Nebenbei: das ist IMO pures C. Nicht, dass das eine Rolle spielen würde, aber falls explizit nach einer C++-Lösung gefragt wurde, würde ich das etwas anders schreiben, nicht dass es sonst Punktabzug gibt.
 

Ähnliche Java Themen

Neue Themen


Oben