zufallszahlen durch bestimmten faktor teilbar...

Einklappen
X
 
  • Filter
  • Zeit
  • Anzeigen
Alles löschen
neue Beiträge

  • zufallszahlen durch bestimmten faktor teilbar...

    Hi Verbündete!

    Mit der folgenden funktion erzeuge ich 8stellige Zufallszahlen zwischen 10000000 und 99999999.
    ist es möglich, php zu sagen, dass die erzeugte zufallszahl nur dann aktzeptiert wird wenn sie zB durch einen bestimmten logarithmus oder einen anderen faktor restlos teilbar ist den ich nach belieben ändern kann??

    CODE:
    $anzahl = 99;
    $i = 0;
    mt_srand ((double) microtime() * 1000000);
    while ($i <= $anzahl) {
    $i++;
    $set_zufall = mt_rand(10000000,99999999);
    }


    Reicht es, wenn ich da nur 8stellige zahlen erzeuge oder soll ich dann zB 10-12stellige erzeugen lassen??


    [Editiert von Metallica am 17-01-2002 um 18:00]
    $PHP resource 4ever$

  • #2
    if ($zahl % $faktor==0) {
    echo 'ok';
    } else {
    echo 'n/ok';
    }

    CAT Music Files

    Kommentar


    • #3
      Code:
      <?
      $faktor = 3;
      $anzahl = 10; 
      $i = 1;
      mt_srand ((double) microtime() * 1000000); 
      while ($i <= $anzahl) { 
      	$set_zufall = mt_rand(10000000,99999999);
      	$gueltig = $set_zufall % $faktor;
      	if ($gueltig == 0) {
      		print "$i. $set_zufall ist durch $faktor teilbar<br>\n";
      		$i++; 
      	}
      } 
      ?>

      Kommentar


      • #4
        danke euch beiden

        wäre es auch möglich, beim faktor einen logarithmus, eine wurzel oder ein integral zu verwenden??

        oder die zahl wenn null rest bleibt nochmal zu dividieren??
        $PHP resource 4ever$

        Kommentar


        • #5
          Probiere es aus

          Kommentar


          • #6
            hat sich erledigt.
            hab's um 2Uhr in der Früh selbst hingekriegt.
            $PHP resource 4ever$

            Kommentar


            • #7
              Hi nochmal!

              hab mir jetzt mal testweise 100 zufallszahlen erzeugen und ausgeben lassen.
              da ist mir was eigenartiges aufgefallen.
              und zwar ist die erste stelle der zufallszahl immer 1 oder 2. Egal wie oft ich's probiere.

              1341471687
              1738210109
              2052143268
              1147564267

              das kann doch kein zufall sein, oder??
              $PHP resource 4ever$

              Kommentar


              • #8
                ist das nicht banane?
                h.a.n.d.
                Schmalle

                http://impressed.by
                http://blog.schmalenberger.it



                Wichtige Anmerkung: Ich habe keine Probleme mit Alkohol ...
                ... nur ohne :-)

                Kommentar


                • #9
                  Kannst bitte das Skript dazu posten, denn das o.a. Skript hat diese Zahlen sicher nicht generiert.

                  Kommentar


                  • #10
                    Hier das OrigScript:
                    <?php
                    $anzahl = 100;
                    $i = 1;
                    mt_srand ((double) microtime() * 10000000);
                    while ($i <= $anzahl) {
                    $set_zufall = mt_rand(1000000000,9999999999);
                    $i++;
                    echo "random=$set_zufall";
                    }
                    ?>

                    letztendlich ist es banane, mich würd halt nur interessieren, warum immer nur 1 oder 2 an der ersten stelle (links) kommt.
                    bei den anderen stellen passierts ja auch nicht.
                    $PHP resource 4ever$

                    Kommentar


                    • #11
                      hmm,

                      liegt wohl daran dass mt_rand integer Variablen erzeugt und die liegen zwischen +-2 Milliarden.
                      naja mach doch im mt_rand befehl je eine Stelle weg und multipliziere das ergebnis mit 10 dann halt du sogar noch den nebeneffekt das die Zahl durch 10 teilbar ist.

                      Kommentar


                      • #12
                        ich kann keine stelle wegnehmen weil ich will, dass er mir 10-stellige zufallszahlen erzeugt.
                        vorher waren's 8. ich weiß.
                        $PHP resource 4ever$

                        Kommentar


                        • #13
                          Dann machst eben zwei Funktionen à vier Zeichen...

                          CAT Music Files

                          Kommentar


                          • #14
                            Dann mach zwei fünfstellige und setze diese beiden zusammen zu einer zehnstelligen. Das mit dem Punkt (Variablen zusammenfügen) kennst Du ja schon.
                            Dann hast Du eine besonders zufällige Zufallszahl.

                            Kommentar


                            • #15
                              Original geschrieben von Sky
                              Dann machst eben zwei Funktionen à vier Zeichen...
                              noch einer, der nicht von 1 bis 10 zählen kann

                              ps 1 + 1 macht 7 widewidewitt und 3 macht neune ...

                              [Editiert von schmalle am 18-01-2002 um 15:14]
                              h.a.n.d.
                              Schmalle

                              http://impressed.by
                              http://blog.schmalenberger.it



                              Wichtige Anmerkung: Ich habe keine Probleme mit Alkohol ...
                              ... nur ohne :-)

                              Kommentar

                              Lädt...
                              X