NEWS
Schleife mit Pausen
-
Hallo Zusammen,
ich möchte in einem Skript einen Block X mal wiederholen, wobei zwischen den Wiederholungen eine Pause sein soll.
Ich komme irgendwie nicht dahinter, warum das "Hallo Welt" hier direkt 5 mal ohne Pause ausgegeben wird


Bitte um Hilfestellung.
Danke.
Micha -
Hallo Zusammen,
ich möchte in einem Skript einen Block X mal wiederholen, wobei zwischen den Wiederholungen eine Pause sein soll.
Ich komme irgendwie nicht dahinter, warum das "Hallo Welt" hier direkt 5 mal ohne Pause ausgegeben wird


Bitte um Hilfestellung.
Danke.
Micha@matschkopf sagte
X mal wiederholen, wobei zwischen den Wiederholungen eine Pause sein soll.
Nimm "Ausführen Intervall" zusammen mit einer Zählvariablen.

-
Hallo Zusammen,
ich möchte in einem Skript einen Block X mal wiederholen, wobei zwischen den Wiederholungen eine Pause sein soll.
Ich komme irgendwie nicht dahinter, warum das "Hallo Welt" hier direkt 5 mal ohne Pause ausgegeben wird


Bitte um Hilfestellung.
Danke.
MichaWeil javascript nicht wartet bis ein Befehl abgeschlossen ist um mit dem nächsten zu starten (... das macht meines Wissens keine "Hochsprache"...). D.h. JS führt die Schleife 5x kurz hinter einander aus (Pause im ms-Bereich), und es erscheint nach 2 Sekunden 5x kurz hinter einander "Hallo Welt".
Du müsstest also eigentlich 5x den timeout ineinander verschachteln. Oder du löst es elegant wie von von @paul53 vorgeschlagen mit einem Intervall. -
Weil javascript nicht wartet bis ein Befehl abgeschlossen ist um mit dem nächsten zu starten (... das macht meines Wissens keine "Hochsprache"...). D.h. JS führt die Schleife 5x kurz hinter einander aus (Pause im ms-Bereich), und es erscheint nach 2 Sekunden 5x kurz hinter einander "Hallo Welt".
Du müsstest also eigentlich 5x den timeout ineinander verschachteln. Oder du löst es elegant wie von von @paul53 vorgeschlagen mit einem Intervall.Danke für die Antworten.
Auch wenn keine Hochsprache darauf wartet, dass ein Befehl abgeschlossen ist, ist es mir zu "hoch", dass verstehen wohl nur Programmierer. Als Blockly Puzzler hätte ich es anders erwartet.
Egal...Was mache ich denn in der eleganten Lösung falsch:

So wird "Hallo Welt" zwar alle 2 Sek einmal ausgegeben, aber nicht nur 3x, sondern unendlich

-
Danke für die Antworten.
Auch wenn keine Hochsprache darauf wartet, dass ein Befehl abgeschlossen ist, ist es mir zu "hoch", dass verstehen wohl nur Programmierer. Als Blockly Puzzler hätte ich es anders erwartet.
Egal...Was mache ich denn in der eleganten Lösung falsch:

So wird "Hallo Welt" zwar alle 2 Sek einmal ausgegeben, aber nicht nur 3x, sondern unendlich

@matschkopf mit dem letzen durchlauf der Schleife startest du nocheinmal das Intervall, es wird aber nicht mehr beendet.
-
Danke für die Antworten.
Auch wenn keine Hochsprache darauf wartet, dass ein Befehl abgeschlossen ist, ist es mir zu "hoch", dass verstehen wohl nur Programmierer. Als Blockly Puzzler hätte ich es anders erwartet.
Egal...Was mache ich denn in der eleganten Lösung falsch:

So wird "Hallo Welt" zwar alle 2 Sek einmal ausgegeben, aber nicht nur 3x, sondern unendlich

-
@matschkopf Dreh die Logik rum!
Erstelle ein Intervall (ohne Stoppen) -> du willst alle 2s etwas ausführen
Darin die Schleife -> und zwar 3x
und darin die Ausgabe. -> und zwar das hierIch hänge mich hier mal dran, weil der Titel des Threads zu meinem Problem passt.
Ich durchlaufe eine Liste mit einer Schleife und bekomme in jedem Durchlauf jeweils Objekt ID und Dauer in Sekunden, um etwas zu schalten (dort wo jetzt noch der Debug Output steht).
Der nächste Durchlauf soll aber erst beginnen, nachdem die Dauer des vorherigen abgelaufen ist.
Ich finde keine Lösung


Grüße
Frank
-
Ich hänge mich hier mal dran, weil der Titel des Threads zu meinem Problem passt.
Ich durchlaufe eine Liste mit einer Schleife und bekomme in jedem Durchlauf jeweils Objekt ID und Dauer in Sekunden, um etwas zu schalten (dort wo jetzt noch der Debug Output steht).
Der nächste Durchlauf soll aber erst beginnen, nachdem die Dauer des vorherigen abgelaufen ist.
Ich finde keine Lösung


Grüße
Frank
@frank2604 sagte: Der nächste Durchlauf soll aber erst beginnen, nachdem die Dauer des vorherigen abgelaufen ist.
Vorschlag:

-
@frank2604 sagte: Der nächste Durchlauf soll aber erst beginnen, nachdem die Dauer des vorherigen abgelaufen ist.
Vorschlag:

Super! Funktioniert einwandfrei. Ich hatte schon so etwas im Kopf von wegen 'Schleife selber bauen' aber ich wusste bisher noch nichts mit den "Funktionen"-Bausteinen anzufangen. Wieder etwas gelernt.
Ganz lieben Dank - auch dafür, dass es so schnell ging und Du Dir auch noch die Mühe gemacht hast, alles in Blockly nachzubauen.

LG Frank
Hey! Du scheinst an dieser Unterhaltung interessiert zu sein, hast aber noch kein Konto.
Hast du es satt, bei jedem Besuch durch die gleichen Beiträge zu scrollen? Wenn du dich für ein Konto anmeldest, kommst du immer genau dorthin zurück, wo du zuvor warst, und kannst dich über neue Antworten benachrichtigen lassen (entweder per E-Mail oder Push-Benachrichtigung). Du kannst auch Lesezeichen speichern und Beiträge positiv bewerten, um anderen Community-Mitgliedern deine Wertschätzung zu zeigen.
Mit deinem Input könnte dieser Beitrag noch besser werden 💗
Registrieren Anmelden