Jens Müller: 2 for() Schleifen synchronisieren

Morgen,

Ich moechte gerne 2 Werte synchron, um einen gleichwertigen Faktor (+8), mit einer, warscheinlich
eher 2 for() Schleife(n) erhoehen lassen.

Wert 1 PST = 16:00 | 00:00
Wert 2 GMT = 23:00 | 07:00 folge Tag

Beide Werte sollen auf Mitternacht Pacific Standard
Time erhoeht werden

Wenn ich die for() Schleifen verschachtel bekomm ich
nur Unsinn raus, in etwa:

for($i = $pst_start; $i <= $pst_end; $i++)
  {
  for ($x = $gmt_start; $x <= $gmt_end; $x++)
    {
    }
  }

PST: 17:00
  GMT: 00:00
       01:00 - 07:00

PST: 18:00
  GMT: 00:00
       01:00 - 07:00

oder Umgekehrt.

Wie schaffe ich's nun die Schleifen synchron laufen zu lassen, das meine Ergebnisse uebereinstimmen:

PST 16:00
    GMT 23:00
 PST 17:00
  GMT   00:00
PST 18:00
  GMT  01:00

Ein tritt in den Hintern, in die Richtige Richtung
wuerd mir schon genuegen.

gruesse aus'm ruhrpott
  jens mueller

--
I am a scout. How can I use Perl in my day-to-day scout business? For example, helping little old ladies across the street. - See the perllol man page.
  1. Wenn ich die for() Schleifen verschachtel bekomm ich
    nur Unsinn raus, in etwa:

    for($i = $pst_start; $i <= $pst_end; $i++)
      {
      for ($x = $gmt_start; $x <= $gmt_end; $x++)
        {
        }
      }

    »»

    ? wenn du die Schleife ablaufen lässt, kommt dann nicht einfach garnichts heraus ???

    bzw. Schleife 2 wird (in diesem Beispiel) 8 x 8 = 64 mal erhöht.(Durchgänge Schleife 1 x Durchgänge Schleife 2), aber es wird nichts ausgegeben.

    Welche Ausgabe möchtest du denn haben?

    Wie schaffe ich's nun die Schleifen synchron laufen zu lassen, das meine Ergebnisse uebereinstimmen:

    PST 16:00
        GMT 23:00
     PST 17:00
      GMT   00:00
    PST 18:00
      GMT  01:00

    Ich hoffe, ich habe dich verstanden..
    wie wärs damit (wenn du konstant um 8 erhöhen willst):

    for($i=0 $i<8 $i++) {
        $pst += $einestunde; //die Werte müssen natürlich entsprechend und addierbar sein
        $gmt += $einestunde;
        print "PST = $pst";
        print "GMT = $gmt";
    }

    gruesse aus'm ruhrpott
      jens mueller

    1. Hallo ,

      ? wenn du die Schleife ablaufen lässt, kommt dann
      nicht einfach garnichts heraus ???

      Was herraus kam war Unsinn:
        16[PST]
          - 23[GMT], 00[GMT], 01[GMT], 02[GMT],03[GMT]
            04[GMT], 05[GMT], 06[GMT], 06[GMT]

      17[PST]
          - 23[GMT], 00[GMT], 01[GMT], 02[GMT],03[GMT]
            04[GMT], 05[GMT], 06[GMT], 06[GMT]

      18[PST]
          - 23[GMT]...

      bzw. Schleife 2 wird (in diesem Beispiel)
      8 x 8 = 64 mal erhöht.(Durchgänge Schleife 1 x
      Durchgänge Schleife 2), aber es wird nichts
      ausgegeben.

      Nein fuer jede Stunde wurden die GMT Zeiten einmal
      komplett ausgegeben.

      for($i=0 $i<8 $i++) {
          $pst += $einestunde;
          $gmt += $einestunde;
          print "PST = $pst";
          print "GMT = $gmt";
      }
      //die Werte müssen natürlich entsprechend und
      addierbar sein

      Im Endeffekt richtig, hab's nur noch ein wenig modifiziert:

      $pst_start = "16";
      $pst_end   = "24";
      $gmt_start = "23";
      $gmt_end   = "07";

      for ($i = $pst_start; $i <= $pst_end; $i++)
        {
        $gmt = ++$gmt_start;

      // Anpassen an Uhrzeit, es gibt ja keine Stunden 25, 26...
        if ($gmt_start xor $pst_start == "23")
          {
          if ($pst_start >= "23")
            {
            unset($pst_start);
            $pst_start = "0";
            }
          if ($gmt_start >= "23")
            {
            unset($gmt_start);
            $gmt_start = "0";
            }
          }

      print "$pst: $i -- $gmt $gmt\n";
        }

      Ausgabe:
      $pst: 16 -- $gmt: 23
      $pst: 17 -- $gmt: 00
      $pst: 18 -- $gmt: 01
      $pst: 19 -- $gmt: 02

      So wollte ich es auch haben, Danke.
      Danke!

      gruesse aus'm ruhrpott
        jens mueller

      --
      I am a scout. How can I use Perl in my day-to-day scout business? For example, helping little old ladies across the street. - See the perllol man page.