Oppgave 7
Skriv ut lister med tall mellom 0 og 100 etter følgende regler:
- Forlengs: 0,1,2,...,98,99,100
- Baklengs: 100,99,98,...,1,0
- Delt på 2: 0,0.5,...,49,49.5,50
- Kun de som er delige på 3: 3,6,9...99 (Tips: Her kan man prøve %-operatoren)
- Partall: 2,4,6,8,...98,100
- Oddetall: 1,3,5,...,97,99
- Annenhvert tall positivt og negativt: 0,-1,2,-3,4,-5,...,-99,100
Resultat
Koden
JavaScript
window.onload = ready;
var o7OutputEl;
function ready() {
o7OutputEl = document.getElementById("o7-output");
document.getElementById("o7-forward").onclick = outputForward;
document.getElementById("o7-backwards").onclick = outputBackwards;
document.getElementById("o7-div-2").onclick = outputDiv2;
document.getElementById("o7-divable-3").onclick = outputDivable3;
document.getElementById("o7-even").onclick = outputEven;
document.getElementById("o7-odd").onclick = outputOdd;
document.getElementById("o7-neg-pos").onclick = outputNegPos;
}
function outputForward() {
empty(); // Tøm listen først
for (var i = 0; i <= 100; i++) {
o7OutputEl.innerHTML += i + ", ";
}
// Kunne blitt løst med shorthand statement, men ville ikke tvinge koden til å kjøre en if check 100
// ganger (selv om det har minimalt å si...)
removeComma();
}
function outputBackwards() {
empty();
for (var i = 100; i >= 0; i--) {
o7OutputEl.innerHTML += i + ", ";
}
removeComma();
}
function outputDiv2() {
empty();
for (var i = 0; i <= 100; i++) {
o7OutputEl.innerHTML += i / 2 + ", ";
}
removeComma();
}
function outputDivable3() {
empty();
for (var i = 0; i <= 100; i++) {
o7OutputEl.innerHTML += i % 3 === 0 ? i + ", ":"";
}
removeComma();
}
function outputEven() {
empty();
for (var i = 0; i <= 100; i++) {
o7OutputEl.innerHTML += i % 2 === 0 ? i + ", ":"";
}
removeComma();
}
function outputOdd() {
empty();
for (var i = 0; i <= 100; i++) {
o7OutputEl.innerHTML += i % 2 !== 0 ? i + ", ":"";
}
removeComma();
}
function outputNegPos() {
empty();
for (var i = 0; i <= 100; i++) {
o7OutputEl.innerHTML += (i % 2 === 0 ? i : -i) + ", ";
}
removeComma();
}
function removeComma() {
o7OutputEl.innerHTML = o7OutputEl.innerHTML.slice(0, -2);
}
function empty() {
o7OutputEl.innerHTML = "";
}
HTML
<div class="row">
<div class="col s6 space-v-small">
<button id="o7-forward" class="btn black">Forlengs</button>
</div>
<div class="col s6 space-v-small">
<button id="o7-backwards" class="btn black">baklengs</button>
</div>
<div class="col s6 space-v-small">
<button id="o7-div-2" class="btn black">Delt på 2</button>
</div>
<div class="col s6 space-v-small">
<button id="o7-divable-3" class="btn black">Delelige på 3</button>
</div>
<div class="col s6 space-v-small">
<button id="o7-even" class="btn black">Partall</button>
</div>
<div class="col s6 space-v-small">
<button id="o7-odd" class="btn black">Oddetall</button>
</div>
<div class="col s12 space-v-small">
<button id="o7-neg-pos" class="btn black">Annenhvert tall + og -</button>
</div>
</div>
<p id="o7-output"></p>