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

Tag 94 von 365 · Fortgeschritten · Monat 4: Netzwerk im Detail

Count, Minimum und Maximum gezielt

Count zählt Geräte – aber ohne Rücksicht auf den Namen. Minimum findet das schwächste Glied. Mit Sum über PrefabHash zählst du trotzdem nach Namen.

Lektion 14 Min. Woche 14

Das lernst du heute

  • Geräte zählen
  • Count ignoriert den Namen
  • Schwächstes Glied finden

Drei Wohnräume, in jedem ein Gassensor namens „Wohnen“. Du willst wissen: Wie viele Sensoren laufen überhaupt? Wo ist die Luft am schlechtesten? Dafür sind Count, Minimum und Maximum da, mit ein paar Eigenheiten.

Count zählt Geräte

Count liefert die Zahl der Geräte, keinen Wert. Den LogicType prüft der Chip trotzdem: Kann ein passendes Gerät ihn nicht lesen, gibt es IncorrectLogicType. PrefabHash kann jedes Gerät lesen.

lb anzahl SENSOR PrefabHash Count   # alle Gassensoren im Netz

Count ignoriert den Namen

Im Spielcode zählt Count alle Geräte mit dem passenden Prefab-Hash. Den Namen schaut es sich nicht an, auch nicht bei lbn:

lbn anzahl SENSOR HASH("Wohnen") PrefabHash Count  # zaehlt ALLE Gassensoren

Hängt im selben Netz noch ein Sensor „Aussen“, zählt er mit. Für eine Zählung mit Namen gibt es einen Trick: Jedes Gerät meldet seinen eigenen PrefabHash. Die Summe über alle Geräte mit diesem Namen, geteilt durch den Hash, ist ihre Anzahl:

lbn summe SENSOR HASH("Wohnen") PrefabHash Sum
div anzahl summe SENSOR             # nur die Sensoren "Wohnen"

Sum beachtet den Namen. Ohne Treffer ergibt sich 0 geteilt durch den Hash, also 0. Auch dieser Fall stimmt.

Das schwächste Glied

Minimum findet den kleinsten Wert, Maximum den größten. Für die Luft heißt das: Der Raum mit dem wenigsten Sauerstoff entscheidet über den Alarm, nicht der Durchschnitt. Ein Mittel aus 21 %, 21 % und 15 % sieht mit 19 % harmlos aus. Das Minimum zeigt die 15 %.

lbn o2 SENSOR HASH("Wohnen") RatioOxygen Minimum
Achtung

Minimum liefert 0, wenn kein Gerät passt, Maximum liefert −unendlich. Ein O₂-Minimum von 0 löst deinen Alarm aus, das ist hier sogar richtig. Beim Maximum geht es schief, darum kümmert sich die nächste Lektion.

Tipp

Vergleich die gezählte Anzahl mit der Zahl, die du gebaut hast. Fehlt ein Sensor, merkst du es sofort, auch wenn die übrigen gute Werte liefern.

Schaubild

Drei Messwerte, fünf Batchmodi Sensor „Raum“ 300 K Sensor „Raum“ 310 K Sensor „Raum“ 250 K lbn Average 286.67 Sum 860 Minimum 250 Maximum 310 Count 3 Sum bei Temperaturen: 860 K – die Heizung hält das für einen Brand.
Count schaut nur auf den Typ, Sum und Minimum auch auf den Namen. Die Summe der PrefabHashes geteilt durch den Hash ist die Anzahl mit Namen.

Übung

Aufgabe

Drei Gassensoren heißen „Wohnen“, ein vierter heißt „Aussen“ und hängt im selben Netz.

  • LED „O2min“: der niedrigste Sauerstoffanteil der Sensoren „Wohnen“ in Prozent
  • LED „Sensoren“: die Zahl der Sensoren „Wohnen“ (der Außensensor zählt nicht mit)
  • Blinklicht „Luftalarm“: an unter 19 % Sauerstoff oder wenn weniger als 3 Sensoren „Wohnen“ da sind

Hinweise

Hinweis 1

Für das schwächste Glied Minimum statt Average.

Hinweis 2

Count zählt auch „Aussen“ mit. Nimm lbn … PrefabHash Sum und teile durch SENSOR.

Hinweis 3

Alarm: slt für den Sauerstoff, slt für die Anzahl, dann or.

Quiz

4 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