Aus Das deutschsprachige Scratch-Wiki

So erstellen Sie Befehle zum Finden der minimalen und maximalen Zahl aus einer Reihe von Zahlen.

Vorbereitung

Zunächst muss man drei Variablen und eine Liste erstellen:

  • (index)
  • (kleinste)
  • (größste)
  • (nummern::list)

Verwendet man dann den folgenden benutzerdefinierten Block, um jede Nummer in ein eigenes Element in der Liste zu trennen:

Definiere Teile (Zahlen) auf
lösche alles aus [zahlen v]
setze [string v] auf []
setze [index v] auf [1]
wiederhole (Länge von (Zahlen)) mal 
  falls <(Zeichen (index) von (Zahlen)) = ()> , dann 
    füge (string) zu [zahlen v] hinzu
    setze [string v] auf () //  Stellen Sie sicher, dass nichts in dieser Eingabe steht
  sonst 
    setze [string v] auf (verbinde (string) und (Zeichen (index) von (Zahlen))
  end //  Stellen sie sicher, dass auf der rechten Seite des Boolean ein Leerzeichen steht
  ändere [index v] um (1)
end
füge (string) zu [zahlen v] hinzu //  Dieser Block fügt alles, was übrig ist, der Liste hinzu

Größste Nummer finden

Dieser Befehl muss folgendermaßen aufgerufen werden: 1 2 3. Die Eingabe von 1 2 3 findet die maximale Zahl aus 1, 2 und 3. Es ist möglich, beliebig viele Zahlen in die String einzugeben.

Den Block erstellen

The first step for creating the command is to make a block called Find Biggest Number, then add a number input called Number string, and finally check the "Run without screen refresh" box. Make this code under the define block:

Zuerst erstellt man einen bentuzerdefinierten Block, der "Finde die größste Nummer in" heißst, als nächstes fügt man eine Zahleneingabe ein. Zu letzt erstellt man diesen Code unter den Block:

Definiere Finde die größste Nummer in (Zahlen)
Teile (Zahlen) auf :: custom
setze [index v] auf [1]
setze [größste v] auf [-Infinity]
wiederhole (Länge von [zahlen v]) mal 
  falls <(Element (index) von [zahlen v]) > (größste)> , dann 
    setze [größste v] auf (Element (index) von [zahlen v])
  end
  ändere [index v] um (1)
end

Den Block benutzen

Jetzt erstellt man folgendes Skript, wenn alles funktioniert, sollte es 3 sagen.

Finde die größste Nummer in [1 2 3] :: custom
sage (größste)

Kleinste Nummer finden

Definiere Finde die kleinste Nummer in (Zahlen)
Teile (Zahlen) auf :: custom
setze [index v] auf [1]
setze [kleinste v] auf [Infinity]
wiederhole (Länge von [zahlen v]) mal 
  falls <(Element (index) von [zahlen v]) < (kleinste)> , dann 
    setze [kleinste v] auf (Element (index) von [zahlen v])
  end
  ändere [index v] um (1)
end

Den Block benutzen

Jetzt erstellt man folgendes Skript, wenn alles funktioniert, sollte es 1 sagen.

Finde die kleinste Nummer in [1 2 3] :: custom
sage (kleinste)

Demo


Das Projekt auf Scratch

Verwendungszwecke für diese Blöcke

Sie werden aus verschiedenen Gründen verwendet, wie zum Beispiel:

  1. Maximal- oder Minimalzahl einer Zahlenfolge ermitteln.
  2. Ratespiele, bei denen man die höchste oder niedrigste Zahl erraten muss.
  3. Erweiterte Berechnungen durchführen.

Code zum Einbinden ins Forum:
[wiki=de:Wie man eine minimale und maximale Zahl findet]Wie man eine minimale und maximale Zahl findet[/wiki]
Cookies helfen uns bei der Bereitstellung von Das deutschsprachige Scratch-Wiki. Durch die Nutzung von Das deutschsprachige Scratch-Wiki erklärst du dich damit einverstanden, dass wir Cookies speichern.