Ankündigung

Einklappen
Keine Ankündigung bisher.

zahl ausgeben wenn gerade

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

  • zahl ausgeben wenn gerade

    hi - ich hab mal ein frage:

    ich will nach jedem zehnten eintrag eine ausgabe machen -->
    also nach zehn einträgen soll er die zahl 2 ausgeben, nach 20 einträge die zahl 3 usw

    $counter=1;
    bei jedem eintrag wird der zähler um eins erhöht.

    wie muss das aussehen, damit er das nur ausgibt wenn das eine gerade zahl ist?

    bsp:
    PHP-Code:
    <?php
    if( (($counter+10)/10) == ('GERADE ZAHL ?!') ){
        echo ((
    $counter+10)/10);
    }
    ?>
    bei diesem beispiel würde ja wie gewollt nach dem 10ten eintrag (der dann die counterid 10 hat) die zahl 2 ausgeben.

    also wie mach ich das, das er das nur ausgibt wenn die zahl gerade ist? denn bei der counterid 13 würde ja dann 2.3 rauskommen !

    Tschuu
    MfG: Tschuu


  • #2
    gerade ist eine zahl, wenn


    $x%2==0

    (der Rest bei der Teilung von x durch 2 ist 0)

    eine Zahl ist demnach durch 3teilbar, wenn

    $x%3==0

    und ob eine zahl nachkommazahlenenthält, kann man so rausfinden:

    if((int)$x==$x) { echo "Keine Nachkommastellen"; }


    usw

    Kommentar


    • #3
      Zitat von Buhmann
      gerade ist eine zahl, wenn
      $x%2==0

      (der Rest bei der Teilung von x durch 2 ist 0)

      eine Zahl ist demnach durch 3teilbar, wenn

      $x%3==0
      nunja - es das ist blöd, weil wenn ich 10 einträge hab gibt er 2 aus - also durch 2 teilbar, aber nicht durch 3
      aber wenn ich 20 einträge hab gibt er 3 aus, das ist durch 3 teilbar aber niccht durch 2...

      ich hab das zweite mal ausprobiert:
      PHP-Code:
      <?php
      if((int)$counter==$counter){
          echo 
      "
      "
      .(($counter+10)/10);
      }
      ?>
      aber er gibt das trozdem aus, auch wenn $counter 2.3 ist ...

      würd edas mit dem ersten beispiel auch gehen wenn ich sag $x%1==0 ???
      MfG: Tschuu

      Kommentar


      • #4
        Zitat von Buhmann
        gerade ist eine zahl, wenn
        ... vielleicht war es falsch zu sagen "Eine Zahl ausgeben wenn diese Gerade ..."

        ich hätte im titel sagen sollen "Zahl ausgeben wenn es eine ganze Zahl ist!"

        Tschuu

        EDIT:

        Also, Neue Fragestellung: WIe muss das aussehen um das hier zu vervollständigen?
        PHP-Code:
        <?php
        if( (($counter+10)/10) == ('NATÜRLICHE ZAHL') ){
          echo ((
        $counter+10)/10);
        }
        ?>
        MfG: Tschuu

        Kommentar


        • #5
          antworten überflüssig ... hab die lösung gefunden:
          PHP-Code:
          <?php
          if(is_int(($counter+10)/10)){
              echo 
          "
          "
          .(($counter+10)/10);
          }
          ?>
          Tschuu
          MfG: Tschuu

          Kommentar


          • #6
            Zitat von Tschuu
            ich hab das zweite mal ausprobiert:
            PHP-Code:
            <?php
            if((int)$counter==$counter){
                echo 
            "
            "
            .(($counter+10)/10);
            }
            ?>
            aber er gibt das trozdem aus, auch wenn $counter 2.3 ist ...

            würd edas mit dem ersten beispiel auch gehen wenn ich sag $x%1==0 ???
            Auch wenn Du schon ne Lösung hast...

            Die angesprochene zweite Lösung würde richtig angewandt so aussehen:

            PHP-Code:
            <?php
            if((int)(($counter+10)/10)==(($counter+10)/10)){
                echo 
            "
            "
            .(($counter+10)/10);
            }
            ?>
            oder effizienter, weil nur eine einzige Division:
            PHP-Code:
            <?php
            $PageNr 
            = ($counter+10)/10;
            if((int)
            $PageNr==$PageNr{
                echo 
            "
            "
            .$PageNr;
            }
            ?>
            Du willst ja wissen, ob der Quotient eine ganze Zahl ist und nicht der Ausgangswert.

            Gibst Du eigentlich den Zähler mit aus?
            Dann solltest Du lieber nur 9 addieren, damit Du 1..10, 11..20 etc. auf einer Seite kriegst statt 0..9, 10..19 etc..
            **********************************
            Nein, ich bin nicht die Signatur.
            Ich putze hier nur.
            **********************************

            Kommentar


            • #7
              nein, ich geb den zähler nicht aus ...
              MfG: Tschuu

              Kommentar

              Lädt...
              X