Ankündigung

Einklappen
Keine Ankündigung bisher.

Zinstage errechnen

Einklappen

Neue Werbung 2019

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

  • Zinstage errechnen

    Hallo zusammen,

    wie lassen sich die Zinstage errechnen? So werden jedoch alle Tage und nicht max. 30 pro Monat ermittelt.

    PHP-Code:
    //Kalenderjahr 360 Tage für Zinsen
    $kalenderjahr_zins "360";
    $startdatummktime(00011142008);  // Startdatum
    $heutetime ();                          // Heute
    $diff$heute $startdatum;
    $anzahl_tage round ($diff 86400);
    $betrag "100";
    $summe_ $anzahl_tage $betrag
    Vielen Dank

    Goof

  • #2
    wie lassen sich die Zinstage errechnen?
    Dafür gibt es doch sicher in einem Wirtschaftsinformatik-Buch Formeln?! Falls nicht -> GOOGLE.

    PS: Willkommen im Forum!

    Kommentar


    • #3
      Gibt es eine Funktion in PHP, die die Zinstage ausgibt (wie in Excel TAGE360)? Eine Berechnung ist deutlich umfangreicher.

      Danke

      Goof

      Kommentar


      • #4
        Wenn du uns Nicht-Buchhaltern kurz sagst was du mit Zinstage meinst?

        Kommentar


        • #5
          Excel :
          TAGE360(Ausgangsdatum;Enddatum;Methode)
          Ausgangsdatum und Enddatum sind die beiden Tagesdaten, für die Sie die dazwischenliegenden Tage berechnen möchten.

          Meinses Wissens nach dann: Nein. Mit Tagen bzw Datum kannste nicht einfach rechnen. Musst du in einen Timestamp umwandeln, dann Verrechnen und dann wieder in Tage bzw Datum umwandeln.

          strtotime(); könnta da interessant werden.

          schaum mal : PHP: Datum/Uhrzeit - Manual

          Kommentar


          • #6
            Hier gibt es ein schönes Beispiel:

            Zinstage-Rechner - Anzahl der Zinstage online berechnen

            Erklärung:
            http://de.wikipedia.org/wiki/Zinssatz

            30/360 (Deutsche Methode): Das Jahr wird mit 360 Tagen gerechnet, jeder Monat immer mit 30 Tagen

            Kommentar


            • #7
              Das musst du wohl selber programmieren. Einfach die Monate zählen und * 30.

              Kommentar


              • #8
                So einfach ist es leider nicht.

                Zuerst die Tage bis zum Monatsende ermitteln:

                <?php
                //Tage bis Monatsende
                echo "Anzahl der Tage bis zum Monatsende: ".(date("t") - date("j"));

                ?>

                Danach die Anzahl der vollen Monate zwischen den Daten errechnen. Diese Zahl mal 30 Tage. Doch wie bekomme ich die Monate zwischen den Terminen?

                Danach noch die Tage bis zum angegebenen Datum ermitteln. Aufsummieren der Zahlen.

                Grüße

                Goof

                Kommentar


                • #9
                  ich kenn mich in wirtschaft leider nicht so aus(mathematisch-naturwissenschaftlicher zweig) aber evtl hilft dir das weiter:
                  PHP: mktime - Manual

                  Kommentar


                  • #10
                    Das ist die Lösung:

                    http://www.php.de/php-einsteiger/514...ekunden-4.html

                    Oder gibt es noch eine bessere Lösung?

                    Viele Grüße

                    Goof

                    Kommentar


                    • #11
                      Das kann doch nicht so schwer sein, ich bau die nachher mal was, aber ich müsste erstmal wissen was zum Beispiel passiert wenn der erste Zinstag der 31. eines Monats ist, ich meine da ham die Banken ja auch geöffnet

                      EDIT: Achso und deine Aussage in #8 versteh ich auch nicht. Wieso Monatsende? Wird der erste Monat nicht mit 30 Tagen berechnet?

                      Kommentar


                      • #12
                        Also bitte die Fragen oben beantworten und dann würde ich so vorgehen: Erstmal generell zwischen 3 Fällen unterscheiden:

                        - Jahr & Monat gleich
                        - Jahr gleich
                        - Jahr unterschiedlich

                        und nun ran ans programmieren:

                        PHP-Code:
                        //startdatum
                        $sjahr 2009;
                        $smonat 1;
                        $stag 15;

                        // enddatum
                        $ejahr 2010;
                        $emonat 6;
                        $etag 10;

                        //fall 1
                        if($sjahr == $ejahr && $smonat == $emonat){
                          echo 
                        "Zinstage: ".($etag $stag);
                        }
                        elseif(
                        $sjahr == $ejahr){ // fall 2
                          // Tage des ersten Monats
                          
                        $erstermonat 30 $stag;
                          
                          
                        // Tage des letzten Monats
                          
                        $letztermonat $etag;
                          
                          
                        // Monate dazwischen
                          
                        $zwischenmonate = ($emonat $smonat 1) * 30;

                          echo 
                        "Zinstage: ".($erstermonat $zwischenmonate $letzermonat);
                        }
                        else{ 
                        // Fall 3
                            // Tage des ersten Monats
                          
                        $erstermonat 30 $stag;

                          
                        // Tage des ersten Jahres
                          
                        $erstesjahr $erstermonat + (12 $smonat) * 30;

                          
                        // Tage des letzten Monats
                          
                        $letztermonat $etag;

                          
                        // Tage des letzten Jahres
                          
                        $letztesjahr $letztermonat + ($emonat -1) *30;
                          
                          
                        // Jahre dazwischen
                          
                        $jahre = ($ejahr $sjahr 1) *360;

                          echo 
                        "Zinstage: ".($erstesjahr $jahre $letztesjahr);

                        ich hab das nicht getestet, ist einfach mal so dahingeschmiert

                        Kommentar


                        • #13
                          Wenn der erste Tag z.B. der 14.11.2008 und der letzte Tag der 21.02.2009 ist, dann sind es 97 Zinstage.

                          Am 14.11.2008 bis zum Monatsende (in diesem Fall 30 Tage; können auch 28 oder 31 sein) = 16 Tage

                          Dezember und Januar je 30 = 60 Tage
                          Februar = 21 Tage

                          Gesamt = 97 Tage

                          Kommentar


                          • #14
                            ja und?

                            Kommentar


                            • #15
                              Zitat von cycap Beitrag anzeigen
                              Das kann doch nicht so schwer sein, ich bau die nachher mal was, aber ich müsste erstmal wissen was zum Beispiel passiert wenn der erste Zinstag der 31. eines Monats ist, ich meine da ham die Banken ja auch geöffnet

                              EDIT: Achso und deine Aussage in #8 versteh ich auch nicht. Wieso Monatsende? Wird der erste Monat nicht mit 30 Tagen berechnet?
                              Nein der erste Monat wird bis zum Monatsende (28,30 oder 31 Tage) gerechnet.

                              Vielen Dank für Eure Hilfe.

                              Goof

                              Kommentar

                              Lädt...
                              X