Rolfi: Sprungmarke per Funktion simulieren

Hi,

gäbe es in PHP Sprungmarken, würde ich folgendes gerne machen:

Schritt1: Erzeuge Zufallszahl
Schritt2: Falls es die Zahl schon gibt, gehe zu Schritt1
Schritt3: Ansonsten weiter im Script

Wie kann ich sowas mit einer Funktion (oder gerne auch anders) simulieren?

Ein "goto-Befehl" wäre jetzt goldrichtig.

Grüße, Rolf

  1. Hi,

    na ja, es geht auch ohne goto, wenn man die Logik einfach umdreht, dann ist es eine normale Schleife:
    tue
      wähle eine Zufallszahl
    solange es diese zahl schon gibt
    weiter im skript

    Du kannst nun zwischen
    do...while (einem post-checked-loop, also erst Ausführung, dann Prüfung => mindestens ein Durchlauf)
    und
    while (einem pre-checked-loop, also erst Prüfung, dann Ausführung)
    wählen

    MfG
    Rouven

    --
    -------------------
    ss:) zu:) ls:& fo:) de:< va:{ ch:? sh:) n4:( rl:? br:$ js:| ie:) fl:(
  2. hi,

    gäbe es in PHP Sprungmarken, würde ich folgendes gerne machen:

    Eine andere Sprache benutzen ...?

    Schritt1: Erzeuge Zufallszahl
    Schritt2: Falls es die Zahl schon gibt, gehe zu Schritt1
    Schritt3: Ansonsten weiter im Script

    Wie kann ich sowas mit einer Funktion (oder gerne auch anders) simulieren?

    Du willst also wiederholt etwas tun, so lange bis eine bestimmte (Abbruch-)Bedingung erfüllt ist. [1]

    Sag, hast du schon von "Schleifen" gehört ...?

    Ein "goto-Befehl" wäre jetzt goldrichtig.

    Nein, Pfui.

    gruß,
    wahsaga

    [1] Wobei das zur Ermittlung einer eindeutigen Zufallszahl sicher nicht der ideale Weg ist - im worst case könntest du in einer Endlosschleife landen.

    --
    /voodoo.css:
    #GeorgeWBush { position:absolute; bottom:-6ft; }
  3. Hallo Rolfi.

    gäbe es in PHP Sprungmarken, würde ich folgendes gerne machen:

    […]

    Ein "goto-Befehl" wäre jetzt goldrichtig.

    Darauf musst du wohl noch etwas warten.

    Einen schönen Mittwoch noch.

    Gruß, Ashura

    --
    sh:( fo:} ch:? rl:( br: n4:~ ie:{ mo:| va:) de:> zu:} fl:( ss:) ls:[ js:|
    „It is required that HTML be a common language between all platforms. This implies no device-specific markup, or anything which requires control over fonts or colors, for example. This is in keeping with the SGML ideal.“
    [HTML Design Constraints: Logical Markup]
    1. Hallo Ashura,

      Ein "goto-Befehl" wäre jetzt goldrichtig.

      Darauf musst du wohl noch etwas warten.»» Hallo Rolfi.

      Das würde ihm dabei aber auch nicht weiterhelfen:

      »Similarly restricting the construct so that you can only jump down should satisfy people who do not want the ability to jump all over the place.«

      Mal ganz davon abgesehen, dass hierbei eine goto-Konstruktion, wenn sie denn möglich wäre, sowieso ganz eklig wär.

      Schöne Grüße,

      Johannes

      --
      WM-Tippspiel: http://zeller-johannes.de/wmtipp/
      ie:% fl:( br:< va:| ls:[ fo:) rl:) n4:? ss:| de:] js:| ch:} sh:) mo:| zu:)
      1. Hallo Johannes.

        Das würde ihm dabei aber auch nicht weiterhelfen:

        […]

        Weiß ich, der Hinweis war auch nicht ganz ernst gemeint.

        Mal ganz davon abgesehen, dass hierbei eine goto-Konstruktion, wenn sie denn möglich wäre, sowieso ganz eklig wär.

        Eben. Es gibt genug bessere Alternativen.

        Einen schönen Donnerstag noch.

        Gruß, Ashura

        --
        sh:( fo:} ch:? rl:( br: n4:~ ie:{ mo:| va:) de:> zu:} fl:( ss:) ls:[ js:|
        „It is required that HTML be a common language between all platforms. This implies no device-specific markup, or anything which requires control over fonts or colors, for example. This is in keeping with the SGML ideal.“
        [HTML Design Constraints: Logical Markup]