tutorials.de Buch-Aktion 05/2012
ERLEDIGT
NEIN
ANTWORTEN
4
ZUGRIFFE
335
EMPFEHLEN
  • An Twitter übertragen
  • An Facebook übertragen
AUF DIESES THEMA
ANTWORTEN
  1. #1
    proliz0711 proliz0711 ist offline Grünschnabel
    Registriert seit
    Nov 2011
    Beiträge
    2
    Meine Fähigkeiten mit Javascript sind eher bescheiden. Ich möchte folgendes Problem lösen:

    Es soll ein Abrechnung mit der Berechnung der anteiligen Werte erfolgen.

    1. Es wird ein Grundwert vorgegeben (z.B. 26,50 Euro)
    2. Es werden bis zu 4 Namen eingegeben
    3. Zu jedem Namen wird ein Wert eingegeben (das kann eine einfache Zahl oder auch ein Euro-Wert sein)
    4. Anhand des Wertes (1.) und den weiteren Werten (3.) wird zu jedem Namen der Anteil errechnet, der jedem einzelnen Namen zuzuordnen ist.

    Geht das überhaupt mit Javascript zu machen? Ich würde mich tierisch über Hilfe bzw. Lösung freuen.

    Achim
     

  2. #2
    Avatar von tombe
    tombe tombe ist offline Mitglied Diamant
    tutorials.de Premium-User
    Registriert seit
    Sep 2004
    Ort
    Möglingen (BaWü)
    Beiträge
    3.109
    So in etwa sollte es gehen:

    HTML-Code:
    <script language="javascript" type="text/javascript">
    function anteil() {
        ges = parseFloat(document.getElementById("gesamt").value);
        w1 = parseFloat(document.getElementById("wert1").value);
        w2 = parseFloat(document.getElementById("wert2").value);
        w3 = parseFloat(document.getElementById("wert3").value);
        w4 = parseFloat(document.getElementById("wert4").value);
    
        t1 = w1 / (w1 + w2 + w3 + w4);
        t2 = w2 / (w1 + w2 + w3 + w4);
        t3 = w3 / (w1 + w2 + w3 + w4);
        t4 = w4 / (w1 + w2 + w3 + w4);
        document.getElementById("erg1").innerHTML = "Prozent " + t1 + " Betrag " + (ges * t1);
        document.getElementById("erg2").innerHTML = "Prozent " + t2 + " Betrag " + (ges * t2);
        document.getElementById("erg3").innerHTML = "Prozent " + t3 + " Betrag " + (ges * t3);
        document.getElementById("erg4").innerHTML = "Prozent " + t4 + " Betrag " + (ges * t4);
    }
    </script>
    <input type="text" name="gesamt" id="gesamt" value="100" size="20" maxlength="50" /><br />
    <input type="text" name="wert1" id="wert1" value="25" size="20" maxlength="50" /><br />
    <input type="text" name="wert2" id="wert2" value="25" size="20" maxlength="50" /><br />
    <input type="text" name="wert3" id="wert3" value="25" size="20" maxlength="50" /><br />
    <input type="text" name="wert4" id="wert4" value="25" size="20" maxlength="50" /><br />
    <div id="erg1"></div><br />
    <div id="erg2"></div><br />
    <div id="erg3"></div><br />
    <div id="erg4"></div><br />
    <a href="#" onclick="anteil();">Anteile berechnen</a>
     
    Sollte ein Tipp von mir geholfen haben, habe ich nichts gegen eine entsprechende Bewertung oder ein Danke und wenn ein Problem gelöst ist, dann den Beitrag bitte auch als erledigt markieren.

    Was ich gar nicht leiden kann sind User die es nicht für nötig halten auf Antworten zu reagieren, die Themen nicht als erledigt markieren und/oder die sich nicht für Hilfe bedanken.

  3. #3
    Back2toxic Back2toxic ist offline Mitglied Gold
    Registriert seit
    Aug 2007
    Ort
    Pfalz
    Beiträge
    219
    Wieso sollte das nicht mit JS gehen?

    Ist doch einfachste Mathematik

    100/Grundwert*Betrag, fertig.

    Was ist denn dein Ansatz?
     

  4. #4
    proliz0711 proliz0711 ist offline Grünschnabel
    Registriert seit
    Nov 2011
    Beiträge
    2
    Hallo und DANKE für Deine Antwort.
    Leider kommen ich nicht weiter, aber vielleicht kannst Du mir einfach besser helfen, wenn ich Dir/Euch die komplette Vorgabe aufschreibe. Hier ist sie noch einmal:

    Meine Fähigkeiten mit Javascript sind eher bescheiden. Ich möchte ein Problem lösen, das sich auf z.B. Skatrunden bezieht, die von Zeit zu Zeit bei mir stattfinden.

    Es soll ein Abrechnung mit der Berechnung der anteiligen Werte erfolgen.

    1. Entweder spielen wir um einen Lottoschein (z.B. 25,60 Euro) oder um 1 Cent, 1/2 Cent, 1/4 Cent oder 1/10 Cent.

    2. Es werden 3 oder 4 Namen eingegeben werden (das sind die Spielteilnehmer der Kartenrunde).

    3. Zu jedem Spieler werden die erspielten Punkte eingetragen (ohne Nachkommastellen)

    4. Aus den Punktedifferenzen der einzelnen Spieler untereinander und der Verrechnung mit einem festen Betrag (z.B. Lottoschein) oder mit dem vereinbarten Cent-Wert ergeben sich Beträge, die die einzelnen Spieler zahlen oder kassieren müssen/dürfen (kaufmännisch gerundet mit 2 Nachkommastellen).

    Mein Problem dabei ist NICHT die Mathematik (über Excel habe ich das schon gelöst). Ich möchte ganz einfach OHNE Excel diese Abrechnungen vornehmen.

    Geht das überhaupt mit Javascript zu machen? Ich würde mich tierisch über Hilfe bzw. Lösung freuen.

    Danke jetzt schon:

    Achim
     

  5. #5
    Avatar von tombe
    tombe tombe ist offline Mitglied Diamant
    tutorials.de Premium-User
    Registriert seit
    Sep 2004
    Ort
    Möglingen (BaWü)
    Beiträge
    3.109
    Im ersten Beispiel waren doch noch einige fehler drin weil ich immer vom falschen Grundwert ausgegangen bin. Aber das hier sollte jetzt stimmen:

    HTML-Code:
    <script language="javascript" type="text/javascript">
    function anteil() {
        total = parseFloat(document.getElementById("gesamt").value * 1);
        w1 = parseFloat(document.getElementById("wert1").value * 1);
        w2 = parseFloat(document.getElementById("wert2").value * 1);
        w3 = parseFloat(document.getElementById("wert3").value * 1);
        w4 = parseFloat(document.getElementById("wert4").value * 1);
        ges = (w1 + w2 + w3 + w4);
    
        t1 = (w1 / ges) * 100;
        t2 = (w2 / ges) * 100;
        t3 = (w3 / ges) * 100;
        t4 = (w4 / ges) * 100;
        document.getElementById("erg1").innerHTML = "Prozent " + t1.toFixed(2) + " Betrag " + ((total * t1) / 100).toFixed(2);
        document.getElementById("erg2").innerHTML = "Prozent " + t2.toFixed(2) + " Betrag " + ((total * t2) / 100).toFixed(2);
        document.getElementById("erg3").innerHTML = "Prozent " + t3.toFixed(2) + " Betrag " + ((total * t3) / 100).toFixed(2);
        document.getElementById("erg4").innerHTML = "Prozent " + t4.toFixed(2) + " Betrag " + ((total * t4) / 100).toFixed(2);
    }
    </script>
    <table>
        <tr>
            <td>Spielsumme</td>
            <td><input type="text" name="gesamt" id="gesamt" value="" size="20"/></td>
            <td></td>
            <td></td>
            <td></td>
        </tr>
        <tr>
            <td>Name Spieler 1</td>
            <td><input type="text" name="spieler1" id="spieler1" value="" size="20"/></td>
            <td>Anteil Spieler 1</td>
            <td><input type="text" name="wert1" id="wert1" value="" size="20"/></td>
            <td><div id="erg1"></div></td>
        </tr>
        <tr>
            <td>Name Spieler 2</td>
            <td><input type="text" name="spieler2" id="spieler2" value="" size="20"/></td>
            <td>Anteil Spieler 2</td>
            <td><input type="text" name="wert2" id="wert2" value="" size="20"/></td>
            <td><div id="erg2"></div></td>
        </tr>
        <tr>
            <td>Name Spieler 3</td>
            <td><input type="text" name="spieler3" id="spieler3" value="" size="20"/></td>
            <td>Anteil Spieler 3</td>
            <td><input type="text" name="wert3" id="wert3" value="" size="20"/></td>
            <td><div id="erg3"></div></td>
        </tr>
        <tr>
            <td>Name Spieler 4</td>
            <td><input type="text" name="spieler4" id="spieler4" value="" size="20"/></td>
            <td>Anteile Spieler 4</td>
            <td><input type="text" name="wert4" id="wert4" value="" size="20"/></td>
            <td><div id="erg4"></div></td>
        </tr>
    </table>
    <br />
    <a href="#" onclick="anteil();">Anteile berechnen</a>
    Geändert von tombe (12.11.11 um 09:58 Uhr)
     
    Sollte ein Tipp von mir geholfen haben, habe ich nichts gegen eine entsprechende Bewertung oder ein Danke und wenn ein Problem gelöst ist, dann den Beitrag bitte auch als erledigt markieren.

    Was ich gar nicht leiden kann sind User die es nicht für nötig halten auf Antworten zu reagieren, die Themen nicht als erledigt markieren und/oder die sich nicht für Hilfe bedanken.

Ähnliche Themen

  1. BMI mit JSP berechnen
    Von starbug im Forum Java
    Antworten: 2
    Letzter Beitrag: 23.07.11, 15:22
  2. Rang Berechnen
    Von EddieG im Forum PHP
    Antworten: 11
    Letzter Beitrag: 20.02.08, 14:02
  3. Durchschnittsdauer berechnen
    Von Bratkartoffel im Forum Relationale Datenbanksysteme
    Antworten: 10
    Letzter Beitrag: 14.02.08, 01:32
  4. [C] Pi berechnen
    Von Azi im Forum C/C++
    Antworten: 23
    Letzter Beitrag: 09.12.07, 14:47
  5. Datum berechnen!
    Von themexican im Forum PHP
    Antworten: 1
    Letzter Beitrag: 15.09.04, 17:33

Stichworte