Zum Inhalt springen
View in the app

A better way to browse. Learn more.

Fachinformatiker.de

A full-screen app on your home screen with push notifications, badges and more.

To install this app on iOS and iPadOS
  1. Tap the Share icon in Safari
  2. Scroll the menu and tap Add to Home Screen.
  3. Tap Add in the top-right corner.
To install this app on Android
  1. Tap the 3-dot menu (⋮) in the top-right corner of the browser.
  2. Tap Add to Home screen or Install app.
  3. Confirm by tapping Install.

Empfohlene Antworten

Veröffentlicht

Hi Leute, habe im September meine Ausbildung zum FiSi gestartet. In der Schule haben wir leider Gottes Programmieren als Hauptfach....

Jetzt habe ich probiert etwas in C++ zu programmieren, und zwar soll mein Prog. Widerstände, Stromstaerken & Spannungen berechnen können, natürlich durch das Ohmsche Gesetz.

Das Programm an sich läuft zwar, aber eben nicht so wie ich es will.

#include <iostream> 


using namespace std; 

int main() 

{ 


double strom, spannung, widerstand, a, b, c; 

cout << "(1)Stromstaerke berechnen, (2) Spannung berechnen, (3) Widerstand berechnen\n\n"; 

cin >> a >> b >> c; 


if (a==1) 

{ 

        cout << "Geben Sie die Spannung an:"; 

        cin >> spannung; 

        cout << "Geben Sie den Widerstand an:"; 

        cin >> widerstand; 

        cout << "Ihre Stromstaerke betraegt:" << spannung/widerstand <<" Ampere\n\n";

} 

else (b==2); 

{ 

        cout << "Geben Sie den Widerstand an:"; 

        cin >> widerstand; 

        cout << "Geben Sie die Stromstaerke an:"; 

        cin >> strom; 

        cout << "Ihre Spannung betraegt:" << widerstand*strom <<" Volt\n\n";

} 

if (c==3); 

{ 

        cout << "Geben Sie die Spannung an:"; 

        cin >> spannung; 

        cout << "Geben Sie die Stromstaerke an:"; 

        cin >> strom; 

        cout << "Ihr Widerstand betraegt:" << spannung/strom <<" Ohm\n\n";

} 

return 0; 

}

Das Programm läuft jedes mal durch die ganzen Punkte, ohne dass es beendet wird, nachdem man ein Punkt anwählt. Und der dritte Punkt ist nicht anwählbar.

Kann sich jemand das evtl. anschauen? Ich denke ich hab ein Fehler in der If-Schleife :D

Danke im Vorraus

Gruß

  • Autor

Danke für die prompte Antwort. Ich habe in der Schule bis jetzt nur if & else gehabt, schwitch-case sagt mir gar nichts. Ist es ohne des nicht möglich? Ich mein das Programm läuft ja an sich, nur eben nicht so wie ich es will xD

probiers mal so:

#include <iostream> 


using namespace std; 

int main() 

{ 


double strom, spannung, widerstand, a, b, c; 

cout << "(1)Stromstaerke berechnen, (2) Spannung berechnen, (3) Widerstand berechnen\n\n"; 

cin >> a >> b >> c; 


if (a==1) 

{ 

        cout << "Geben Sie die Spannung an:"; 

        cin >> spannung; 

        cout << "Geben Sie den Widerstand an:"; 

        cin >> widerstand; 

        cout << "Ihre Stromstaerke betraegt:" << spannung/widerstand <<" Ampere\n\n";

} 

else if(b==2) 

{ 

        cout << "Geben Sie den Widerstand an:"; 

        cin >> widerstand; 

        cout << "Geben Sie die Stromstaerke an:"; 

        cin >> strom; 

        cout << "Ihre Spannung betraegt:" << widerstand*strom <<" Volt\n\n";

} 

else if(c==3)

{ 

        cout << "Geben Sie die Spannung an:"; 

        cin >> spannung; 

        cout << "Geben Sie die Stromstaerke an:"; 

        cin >> strom; 

        cout << "Ihr Widerstand betraegt:" << spannung/strom <<" Ohm\n\n";

} 

return 0; 

}

Ich habe in der Schule bis jetzt nur if & else gehabt, schwitch-case sagt mir gar nichts. Ist es ohne des nicht möglich?

Control Structures - C++ Documentation

Es ist ohne switch-case möglich, aber Du solltest Dir einmal die Semantik Deines Codes anschauen, also das was er tut. Ich beschreibe Dein Programm mal in Worten:


erzeuge Variablen strom, spannung, widerstand, a, b, c vom Typ double

gebe auf dem Standardstream folgendes aus "cout << "(1)Stromstaerke berechnen, (2) Spannung berechnen, (3) Widerstand berechnen\n\n";"

lese vom Standardstream erst a, dann b, dann c ein


wenn a gleich 1 ist dann

        gebe auf dem Standardstream aus "Geben Sie die Spannung an:"

        lese vom Standardstream in die Variable spannung ein

        gebe auf dem Standardstream aus "Geben Sie den Widerstand an:"

        lese vom Standardstream in die Variable widerstand ein

        gebe auf dem Standardstream aus "Ihre Stromstaerke betraegt:", berechne spannung durch widerstand und gebe es aus, danach gebe aus "Ampere\n\n"


wenn a nicht gleich 1 ist dann

       b ist gleich 1


beginne neuen Block

      gebe auf dem Standardstream aus "Geben Sie den Widerstand an:"

      lese vom Standardstream in die Variable widerstand ein

      gebe auf dem Standardstream aus "Geben Sie die Stromstaerke an:"

      lese vom Standardstream in die Variable strom ein

      gebe auf dem Standardstream aus "Ihre Spannung betraegt:", berechne strom*widerstand und gebe es aus, danach gebe aus " Volt\n\n"

neuer Block endet


wenn c gleich 1 ist dann

     mache nichts


beginne neuen Block

        gebe auf dem Standardstream aus "Geben Sie die Spannung an:"

        lese vom Standardstream in die Variable spannung ein

        gebe auf dem Standardstream aus "Geben Sie die Stromstaerke an:"

        lese vom Standardstream in die Variable strom ein

        gebe auf dem Standardstream aus "Ihr Widerstand betraegt:", berechne spannung durch strom und gebe es aus, danach gebe aus "Ohm\n\n"

neuer Block endet

Überlege Dir, ob das Programm so überhaupt sinnvoll ist. Es sind mehrere Punkte, die hier semantisch, d.h. inhaltlich keinen Sinn ergeben. Im Normalfall würde das Programm starten und fragen, was ich berechnen will, also entweder Stromstärke oder Spannung oder Widerstand, d.h. ich kann nur "eine von drei Optionen wählen". Wenn ich dann diese ausgewählt habe, dann muss das Programm prüfen, welche es ist und eben die zwei Werte von mir anfordern und das Ergebnis berechnen

  • Autor

Else if ist mir neu^^ Super! Funktioniert, danke dir :) Ein kleines Problem ist noch dabei, und zwar muss ich die jeweilige Zahl immer 3 mal eingeben, damit das Programm läuft. Lässt sich das irgendwie verhindern?

Erstelle ein Konto oder melde dich an, um einen Kommentar zu schreiben.

Configure browser push notifications

Chrome (Android)
  1. Tap the lock icon next to the address bar.
  2. Tap Permissions → Notifications.
  3. Adjust your preference.
Chrome (Desktop)
  1. Click the padlock icon in the address bar.
  2. Select Site settings.
  3. Find Notifications and adjust your preference.