realtiv simple Rechnung, aber ungewohnt, kann jemand helfen?

xxxomxxx

Grünschnabel
Hi

ich habe folgendes Problem:

ich musss ein Wert ausrechnen der auf folgendem prinzip beruht

Ist H zwischen 18.5 und 26.4 wird H P*0.4 abgezogen.
Sinkt aber der Wert H währenddem unter 18.4, so wird für den Rest von P der noch übrigbleibt
nur P*0.3 abgezogen wieder bis der Wert unter 11.4 fällt, dann nur noch 0.2 etc.

Bsp:
H=19.1 P=6
19.1 - (2 x 0.4)=18.3
18.3 - (4x0.3)=17.1

wie könnte man das mit javascript berechnen?
 
Ehrlich gesagt versteh' ich deine Rechnung trotz Beispiel nicht.
Im Beispiel sagst du P = 6 und vorher sagst du H wird P*0.4 abgezogen. Wieso ist steht dann in der zweiten Zeile
19.1 - (2*0.4) satt 19.1 - (6*0.4)
? Und was meinst du mit dem Rest von P?

Egal, mach's doch einfach mit if-Anweisungen:

if (H >= 18.5 && H <= 26,4) {
H = H - P * 0.4; // Klammern sind unnötig (Punkt vor Strich)

if (H < 18.4) {
(....)

if (H < 11.3) {
(....)
}
}
}
 
Zuletzt bearbeitet:
also, gesamthaft wird in meinem Beispiel total 6 P abgezogen, zuerst 2P bezw 2x0,4, dann sinkt der wert unter den ersten grenzwert, dann hat P noch 4 rest. Dann wird noch 4P bezw 4x0.3 abgezogen
 
So?
Code:
<script type="text/javascript">
<!--
H=19.1, 
P=6, 
A=[[18.5,0.4],[11.5,0.3],[5.5,0.2],[0.5,0.1]];

for(i = 0; i < A.length; ++i)
    {
        while( P > 0 && H >= A[i][0] )
            {
                P--; H-=A[i][1];
            }
    }

alert(H);

//-->
</script>
In Array A sind paarweise die Werte angegeben...[bis wann abziehen,wieviel abziehen]
 
könnte man jetzt noch wenn P minus wäre, H bei 36>=H>=26.5, H um 0.2xP und bei 26.4>=H>-4.4 H um 0.1xP erhöhen?
 
Kannst du machen....dann musst du das Ganze halt umdrehen und statt zu substrahieren addieren...das Prinzip sollte aus meinem Beispiel ja erkenntlich sein.
 

Neue Beiträge

Zurück