Funktion zum Runden

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

  • Funktion zum Runden

    Sicherlich gibt es schon eine Funktion in Php die eine Zahl in Bruchschreibweise runden kann.

    Ich habe mal eine Funktion zusammengebastelt. Bis jetzt funktioniert sie, jedoch weiß ich nicht ob sie für ALLE Zahlen funktioniert. Kann man die FUnktion so lassen? oder ist das eine FALSCHE lösung, die die oben genannten Anforderungen nicht erfüllen kann?

    THX

    PHP-Code:
    function runde ($zahl,$teiler)
    {
        
    $bruch $zahl $teiler;
        if (
    $zahl $teiler != 0){
            
    $rest $zahl $teiler;
                if ((
    $teiler/$rest) > 2) {
                    
    $zahl explode(".",$bruch);
                    echo 
    $zahl[0];
                    echo 
    "<br>";
                }else{
                    
    $zahl explode(".",$bruch);
                    echo ++
    $zahl[0];
                    echo 
    "<br>";
                }
        }else
        {
            echo 
    "Zahl ist gerade und wird nicht gerundet!";
            echo 
    "<br>";
        }
    }

    //BEISPIEL - FUNKTION WIRD ANGEWANDT

    echo 10/" ==>"runde(10,2); 

    echo 
    3/2  " ==>"runde(3,2);

    echo 
    13/" ==>"runde(13,7); 

    echo 
    37/" ==>"runde(37,3); 

    echo 
    9/" ==>"runde(9,7); 

    echo  
    111/" ==>"runde(111,7);


    // Ausgabe
    ==>Zahl ist gerade und wird nicht gerundet!
    1.5 ==>2
    1.85714285714 
    ==>2
    12.3333333333 
    ==>12
    1.28571428571 
    ==>1
    15.8571428571 
    ==>16 

  • #2
    Warum kannst du nicht anstatt runde($zahl, $teiler); round($zahl/$teiler, 0); verwenden?
    Du kannst jeden Tag wie deinen letzten leben, du musst nur jeden Tag das Gleiche tun.

    Denk' mal drüber nach!

    Kommentar


    • #3
      Ich blicke zwar den Sinn hinter deinen Bemühungen nicht so ganz, aber hast du trotzdem mal negative Werte mit deiner Funktion getestet?
      Simploo CMS - das einfache Webseiten-Bearbeitungsprogramm

      Kommentar


      • #4
        ich nehme an dass es bei negativen werten noch nicht geht, Wäre die Funktion denn für positive WErte okay ?

        @ Click, weil ich'n bisschen Gedächnistraining haben und irgend ne Funktion erstellen wollte

        Kommentar


        • #5
          Warum kannst du nicht anstatt runde($zahl, $teiler); round($zahl/$teiler, 0); verwenden?
          versteh ich auch nich ...

          http://de.php.net/round
          tutorial: peterkropff.de schattenbaum.de tut.php-quake.net
          documentation: php.net mysql.com framework.zend.com

          Die Nachtwache!

          Kommentar


          • #6
            Hab grade nen Bug bei dir gefunden:
            PHP-Code:
            ($zahl $teiler != 0){ 
            muss zu
            PHP-Code:
            ($zahl $teiler !== 0){ 
            werden
            Du kannst jeden Tag wie deinen letzten leben, du musst nur jeden Tag das Gleiche tun.

            Denk' mal drüber nach!

            Kommentar


            • #7
              Thx Click,warum funktioniert's dann trotzdem? Is Php wohl net so zimperlich wie manch andere Sprachen?

              und nochmal ... Es geht hier nicht um den SINN der Funktion

              Kommentar


              • #8
                weiß auchned... eigentlich müsste die Abfrage immer halbumgesetzt so aussehn:
                if(true)
                naja. schön ist's auf jedenfall nicht. php ist ja immer sehr felxibel, anscheinend auch an dieser stelle
                Du kannst jeden Tag wie deinen letzten leben, du musst nur jeden Tag das Gleiche tun.

                Denk' mal drüber nach!

                Kommentar


                • #9
                  worum gehts dann? ästhetischen wert? er ist gering, weil du ein fahrrad erfindest.

                  5 ==>Zahl ist gerade und wird nicht gerundet!
                  die zahl ist nicht gerade, sondern ganz.

                  Kommentar

                  Lädt...
                  X