0 Daumen
1,6k Aufrufe

Frage:

Erstellen Sie ein Struktogramm oder wahlweise ein UML-Sequenzdiagramm für den folgenden C++-Code.

void Controller::run()
{
do {
wert=sensor.getValue();
if (wert > 120) {
aktor.on();
}
else {
aktor.off();
}
counter++;
if ( counter >= 100 ) {
terminal.sendByte(wert);
counter=0;
}

} while (true);
}


Kann mir jemand sagen, wie ich beginnen soll bzw. einen Tipp geben?

Avatar von

1 Antwort

0 Daumen

Hi!


Ein Struktogramm erläutert eine Routine bzw. Methode in verständlicher Sprache (Pseudo Code), indem es alle einzelnen Prozeduren und Abzweigungen graphisch untereinander abbildet, quasi, wie ein Rezept zum Nudeln kochen.


Es bieten sich Programme wie Structorizer an, um solche einfach und simpel zu erstellen.

Du gehst anschließend alle einzelnen Codezeilen durch und erstellst das passende Nudelrezept. Aus der Zeile

wert = sensor.getValue();
wird als Pseudo Code ungefähr sowas:

sensor.getValue() -> wert
Du kannst alternativ die Zeile einfach in C++ Code bestehen lassen. Mache dir klar, dass jeder, der die Programmiersprache nicht kennt, den Sinn der Routine bzw. den Ablauf verstehen soll. Dafür wird gerne die Java Syntax verwendet, da diese weit verbreitet ist (diese ähnelt sich der von C++ in vielerlei Hinsicht). Du kannst aber auch in Volltext schreiben:

Das Ergebnis der Methode getValue vom Attribut sensor wird wert zugeordnet

Für Bedingungen oder Schleifenköpfe wäre bei

if(counter >= 100)
beispielsweise

Wenn counter größer gleich 100
oder

Wenn counter >= 100
sinnvoll.



Beste Grüße

Felix

Avatar von

Ein anderes Problem?

Stell deine Frage

Ähnliche Fragen

0 Daumen
1 Antwort
0 Daumen
1 Antwort
0 Daumen
1 Antwort

Willkommen bei der Stacklounge! Stell deine Frage einfach und kostenlos

x
Made by a lovely community