stationeers.de Mod-Werkstatt · Dominik1199
EN Anmelden
  1. Start
  2. IC10-Akademie
  3. Tag 26

Tag 26 von 365 · Einsteiger · Monat 1: Erste Schritte

Runden: round, trunc, floor, ceil

round, trunc, floor und ceil: vier Arten, die Nachkommastellen loszuwerden – und warum sie sich bei negativen Zahlen unterscheiden.

Lektion 10 Min. Woche 4

Das lernst du heute

  • Vier Arten zu runden
  • Negative Zahlen beachten
  • Anzeigen auf Stellen runden

Der Sensor meldet 294.2318 K. Auf der Anzeige willst du „21.1“ sehen, nicht „21.0818“. Und wenn du ausrechnest, wie viele Gasflaschen du brauchst, darf keine halbe Flasche herauskommen. Dafür gibt es vier Befehle.

Die vier Rundungsbefehle

Befehlmacht2.7−2.7
round r? azur nächsten ganzen Zahl3−3
trunc r? aNachkommastellen abschneiden2−2
floor r? aabrunden, Richtung minus unendlich2−3
ceil r? aaufrunden, Richtung plus unendlich3−2

Negative Zahlen

Bei positiven Zahlen sind trunc und floor gleich. Bei negativen nicht: trunc schneidet nur ab und geht damit zur Null hin, floor geht immer nach unten. Für −2.7 heißt das: trunc liefert −2, floor liefert −3. Auf dem Mars bei −40 °C ist das kein Randfall, sondern Alltag.

Achtung

Bei Werten genau auf .5 rundet round nicht immer so, wie du es aus der Schule kennst. Verlass dich bei solchen Werten nicht auf eine bestimmte Richtung. Bei Messwerten kommt genau .5 ohnehin fast nie vor.

Auf Stellen runden

Es gibt keinen Befehl „runde auf eine Nachkommastelle“. Du verschiebst das Komma, rundest und schiebst es zurück:

l r0 d0 Temperature
sub r0 r0 273.15     # z. B. 21.0818
mul r1 r0 10         # 210.818
round r1 r1          # 211
div r1 r1 10         # 21.1
s d1 Setting r1

Für zwei Stellen nimmst du 100 statt 10.

Ganze Stücke

Wenn etwas nur in ganzen Stücken existiert, entscheidet die Frage, welche Richtung sicher ist:

div r2 r3 50         # Mol je Flasche: 50
ceil r2 r2           # lieber eine Flasche zu viel

ceil gibt dir genug Flaschen, floor sagt dir, wie viele volle Flaschen du schon füllen kannst.

Tipp

Die Anzeige im Modus Percent rundet selbst auf ganze Prozent. Dort brauchst du also kein round.

Schaubild

Datenfluss eines Rechenbefehls add r1 r0 273.15 r0 = 21 273.15 + r1 = 294.15 das Ziel steht immer vorne
Rundungsbefehle lesen einen Wert und legen das Ergebnis im Zielregister ab. Das Ziel steht wie immer vorne.

Übung

Aufgabe

d0 ist ein Gas-Sensor, d1 und d2 sind LED-Anzeigen.

  • d1 zeigt die Temperatur in °C, gerundet auf eine Nachkommastelle.
  • d2 zeigt den Druck in ganzen kPa, abgerundet.

Hinweise

Hinweis 1

Eine Nachkommastelle: mal 10, round, durch 10.

Hinweis 2

Abrunden heißt floor – bei positiven Drücken täte es auch trunc.

Quiz

5 Fragen. Ab 60 % ist das Quiz bestanden – die Auswertung macht der Server.

Tag abschließen

  • Übung im Simulator bestanden
  • Quiz mit mindestens 60 % bestanden

Ohne Konto wird der Fortschritt nur in diesem Browser gespeichert.

Fehler in dieser Lektion melden

Zum Melden bitte anmelden. Anmelden

Esc
↑ ↓ wählenEnter öffnen/ öffnet die Suche überall