Gå til innhold
Trenger du skole- eller leksehjelp? Still spørsmål her ×

Hjelp til oppgaver i IT2


Gjest Slettet-ee8Tb0

Anbefalte innlegg

Hei igjen,

 

@benbjo

 

Jeg har nå valgt å lagre svarene i en åpen array, og hver gang noen tar rett/feil, så pusher jeg -1 for feil og +1 for rett inn i en array. 

 

Når jeg skriver ut dette i men da får jeg dette i arrayen = [-1, 1, 1,1.. osv]. Finnes det en funksjon, hvor man kan plusse sammen alle verdier i en array? 

 

jeg har prøvd meg frem: 

 

var sumSvar = []; // array for lagrede svar

 

function sumArray(sumSvar) {
              for (
                  var
                      indeks = 0,              
                      sum = 0;                
                      indeks < length;         
                      sum += sumSvar[index++]   
                     );
                     return sum;

 

                   }
---- 
så prøver jeg å kalle opp funskjonen senere: 
 
var visTotalSum = function(){
 
 
                  sumArray(); // Hva skal jeg kalle opp? hvordan?
 
                svar.innerHTML = "Du fikk " + sumSvar + " poeng på denne språktesten.<br>";
}

 

HJELP

Endret av Bubudubub
Lenke til kommentar
Videoannonse
Annonse

Du må jo sende inn sumSvar-arrayet i metodekallet sumArray. For-løkka di ser også litt rar ut.

 

Tror i alle fall du må definere sum utenfor løkka. I returnen din er den vel undefined?

 

ja, den va undefined. 

 

Er dette bedre? 

 

var sumSvar = [];
var sum = 0;
function sumArray(){
for (var i = 0, sum = 0; i < sumSvar.length; sum += sumSvar[i++]){
  return sum;
 }

 

}
 
-- Kaller upp senere --> 
 
var visTotalSum = function(){
 
                  sumArray(sumSvar);
 
 
                svar.innerHTML = "Du fikk " + sumSvar + " poeng på denne språktesten.<br>";
}
 
Utfallet i "svar.innerHTML" blir [1,-1,1 etter jeg har fiklet med quizzen. Altså den regner ikke sammen. :?
Endret av Bubudubub
Lenke til kommentar

Ja, for det første så må du ta i mot verdien som sumArray returnerer. F.eks var sum = sumArray(sumSvar). Så er det denne verdien som må skrives ut.

 

For-løkka er fortsatt litt rar. Siden du har return sum inni den så vil du alltid returnere 0.

Gjør heller dette:

Var sum=0

For(var i=0;i<sumSvar.length;i++){ sum+=sumSvar

}

Return sum

Lenke til kommentar

Opprett en konto eller logg inn for å kommentere

Du må være et medlem for å kunne skrive en kommentar

Opprett konto

Det er enkelt å melde seg inn for å starte en ny konto!

Start en konto

Logg inn

Har du allerede en konto? Logg inn her.

Logg inn nå
  • Hvem er aktive   0 medlemmer

    • Ingen innloggede medlemmer aktive
×
×
  • Opprett ny...