faelsendoorn
Gebruiker
- Lid geworden
- 2 jun 2012
- Berichten
- 16
Ik ben bezig met het programmeren in JavaScript om mijn vaardigheden daarin te verbeteren.
Ik loop tegen het probleem aan dat ik niet goed kan inzien hoe ik het volgende moet doen: bij een visboer kan je (nu nog) 2 artikelen bestellen. Afhankelijk van het aantal artikelen per artikel krijg je per 3 stuks korting.
Voorbeeld: bij 6 bakken kibbeling krijg je 6*0.16 = 0.96 cent korting op de subtotaalprijs van kibbeling. bij 12 viskoekjes krijg je 12*0.16 = 1.92 korting op de subtotaalprijs van viskoekjes.
Ik wortel met hoe ik dit algoritmisch kan neerzetten. Ik weet dat ik veelvouden van 3 nodig heb en misschien wel een wiskundige sommatie functie?
[JS]
var artikelen = [
["Kibbeling", 6.00],
["Viskoekje", 1.25]
];
labelKibbelingPrijs.innerHTML = (artikelen[0][1]).toFixed(2);
labelViskroketPrijs.innerHTML = artikelen[1][1].toFixed(2);
function berekening() {
var aantalKibbeling, aantalViskoekjes, subPrijsKibbeling, subPrijsViskoekje, totaalPrijs;
aantalKibbeling = document.getElementById("invoerveldAantalKibbeling").value;
aantalViskoekjes = document.getElementById("invoerveldAantalViskoekjes").value;
label1.innerHTML = aantalKibbeling;
label2.innerHTML = aantalViskoekjes;
subPrijsKibbeling = (aantalKibbeling * artikelen[0][1]).toFixed(2);
subPrijsViskoekje = (aantalViskoekjes * artikelen[1][1]).toFixed(2);
prijsKibbeling.innerHTML = subPrijsKibbeling;
prijsViskoekje.innerHTML = subPrijsViskoekje;
totaalPrijs = ((aantalKibbeling * artikelen[0][1]) + (aantalViskoekjes * artikelen[1][1])).toFixed(2);
label3.innerHTML = "€ " + totaalPrijs;
}
[/JS]
Ik loop tegen het probleem aan dat ik niet goed kan inzien hoe ik het volgende moet doen: bij een visboer kan je (nu nog) 2 artikelen bestellen. Afhankelijk van het aantal artikelen per artikel krijg je per 3 stuks korting.
Voorbeeld: bij 6 bakken kibbeling krijg je 6*0.16 = 0.96 cent korting op de subtotaalprijs van kibbeling. bij 12 viskoekjes krijg je 12*0.16 = 1.92 korting op de subtotaalprijs van viskoekjes.
Ik wortel met hoe ik dit algoritmisch kan neerzetten. Ik weet dat ik veelvouden van 3 nodig heb en misschien wel een wiskundige sommatie functie?
HTML:
<html>
<head><title>Oefenen</title></head>
<body style = "background-color:powderblue;">
De prijs van een <u>bakje kibbeling</u> (<b>300 gram</b>) is € <span id = "labelKibbelingPrijs"></span> met gratis saus. <br>
De prijs van een <u>viskroket</u> is € <span id = "labelViskroketPrijs"></span>.<br><br>
Voer het aantal bakjes kibbeling in dat je wilt: <input type = "number" min = "0" id = "invoerveldAantalKibbeling"> <br>
Voer het aantal viskoekjes in dat je wilt: <input type = "number" min = "0" id = "invoerveldAantalViskoekjes">
<input type = "button" id = "btn1" value = "Bereken prijs" onclick = "berekening()">
<hr>
Aantal bakjes kibbeling: <span id = "label1"></span> <br>
Aantal viskoekjes: <span id = "label2"></span><br><br><br>
Prijs kibbeling: <span id = "prijsKibbeling"></span><br>
Prijs viskoekje: <span id = "prijsViskoekje"><span><br><br><br>
Korting kibbeling: <span id = "kortingKibbeling"></span><br>
Korting viskoekje: <span id = "kortingViskoekje"></span><br>
<hr>
Totaalprijs: <span id = "label3"></span>
</body>
</html>
[JS]
var artikelen = [
["Kibbeling", 6.00],
["Viskoekje", 1.25]
];
labelKibbelingPrijs.innerHTML = (artikelen[0][1]).toFixed(2);
labelViskroketPrijs.innerHTML = artikelen[1][1].toFixed(2);
function berekening() {
var aantalKibbeling, aantalViskoekjes, subPrijsKibbeling, subPrijsViskoekje, totaalPrijs;
aantalKibbeling = document.getElementById("invoerveldAantalKibbeling").value;
aantalViskoekjes = document.getElementById("invoerveldAantalViskoekjes").value;
label1.innerHTML = aantalKibbeling;
label2.innerHTML = aantalViskoekjes;
subPrijsKibbeling = (aantalKibbeling * artikelen[0][1]).toFixed(2);
subPrijsViskoekje = (aantalViskoekjes * artikelen[1][1]).toFixed(2);
prijsKibbeling.innerHTML = subPrijsKibbeling;
prijsViskoekje.innerHTML = subPrijsViskoekje;
totaalPrijs = ((aantalKibbeling * artikelen[0][1]) + (aantalViskoekjes * artikelen[1][1])).toFixed(2);
label3.innerHTML = "€ " + totaalPrijs;
}
[/JS]