Uitwerkingen van het proeftentamen http://www.liacs.nl/home/kosters/js/proef.html de maaknul-som: alleen maaknul1 en maaknul4 maken de globale variabele getal 0 de wissel-som alleen wissle1 wisselt echt de waardes van de globale variabelen a en b om function kwadraten (n) { var i; // tellertje for ( i = 1; i <= n; i++ ) { window.document.write(i + " : " + i * i + " ; "); if ( i % 5 == 0 ) window.document.write("
\n"); } // for } // kwadraten function vraag ( ) { var getal = 1; // ingelezen getal var aantal = 0; // aantal ingevoerde getallen var som = 0; // en hun som while ( getal >= 0 ) { getal = prompt ("Uw getal ...", ""); getal = parseInt (getal); if ( ! NaN (getal) && getal >= 0 ) { som += getal; aantal++; } // if } // while if ( aantal > 0 ) window.document.write(aantal + " getallen, met gemiddelde " + som / aantal); } // vraag function menu ( ) { var keuze = "X"; // keuze van gebruiker var detijd; // voor de datum etcetera var maandnummer; // nummer van de huidige maand while ( keuze != 'S' ) { keuze = prompt ("[S]toppen [A]lert-box [B]bb", ""); if ( keuze == "A" ) { detijd = new Date ( ); maandnummer = detijd.getMonth ( ); maandnummer++; // anders is januari 0 alert ("Maand " + maandnummer); } // if else if ( keuze == "B" ) alert ("Bbb"); } // while } // menu function eenna (A,n) { var eenna; // array-index van op een na grootste getal uit A var gr; // idem, grootste var i; // tellertje if ( A[0] > A[1] ) { gr = 0; eenna = 1; } // if else { gr = 1; eenna = 0; } //else for ( i = 2; i < n; i++ ) { if ( A[i] > A[gr] ) { eenna = gr; gr = i; } // if else if ( A[i] > A[eenna] ) eenna = i; } // for return A[eenna]; } // eenna function linzoek (A,n,X) { var i = 0; // om langs array te lopen: i is de array-index var positie = -1; // waar staat X? var gevonden = false; // hebben we succes? while ( i < n && ! gevonden ) { if ( A[i] == X ) { gevonden = true; positie = i; } // if else i++; } // while return positie; } // linzoek OF korter, gebruik makend van de wetenschap dat X zeker voorkomt: function linzoek (A,n,X) { var i = 0; // om langs array te lopen: i is de array-index while ( i < n ) { if ( A[i] == X ) return i; else i++; } // while } // linzoek function bubblesort (A) { var i; // turft de rondes var j; // om langs array te lopen var temp; // hulpvariabele voor verwisselen for ( i = 1; i < A.length; i++ ) for ( j = 0; j < A.length - i; j++ ) if ( A[j] > A[j+1] ) { temp = A[j]; A[j] = A[j+1]; A[j+1] = temp; } // if } // bubblesort function sorteer (A,n) { // voorbeeld: 0 1 2 3 4 5 6 7 8 // 1 2 7 4 5 6 3 8 9 ( 3 en 7 verwisseld) // i wordt nu 2, en j wordt 5; wissel getallen op plekken 2 en 6 var i = 0; // zoek eerste plek var j; // zoek tweede plek var temp; // voor verwisselen while ( A[i] < A[i+1] ) i++; j = i+1; while ( A[j] < A[j+1] ) j++; temp = A[i]; A[i] = A[j+1]; A[j+1] = temp; } // sorteer function maak (A,m,n) { var i; // voor rijen var j; // voor kolommen A = new Array (m); for ( i = 0; i < m; i++ ) { A[i] = new Array (n); for ( j = 0; j < n; j++ ) if ( i > j ) A[i][j] = i; else A[i][j] = j; } // for } // maak function som (A,m,n) { var i; // voor rijen var j; // voor kolommen var totaalsom = 0; // voor de som for ( i = 0; i < m; i++ ) for ( j = 0; j < n; j++ ) totaalsom += A[i][j]; return totaalsom; } // som function rijgem (A,i,m,n) { var j; // voor kolommen var rijsom = 0; // voor de som for ( j = 0; j < n; j++ ) rijsom += A[i][j]; return rijsom / n; } // rijgem var index = 0; // welk plaatje? var detimer; // hoe heet de wekker? function roteer ( ) { if ( index == 0 ) window.document.hetplaatje.src = "a.jpg"; else if ( index == 1 ) window.document.hetplaatje.src = "b.jpg"; else window.document.hetplaatje.src = "c.jpg"; index++; if ( index >= 3 ) index = 0; detimer = setTimeout ("roteer ( );", 5000); } // roteer roteer ( ); in HTML: function willekeur (n) { return ( 1 + Math.floor ( Math.random ( ) * n ) ); // 0 <= Math.random ( ) * n < n, dus afronden naar beneden // geeft geheel getal met 0 <= getal <= n-1 } // willekeur function controle (A,m,n) { var i; // voor rijen var j; // voor kolommen var q; // tussenstation for ( i = 0; i < m; i++ ) for ( j =i+1; j < m; j++ ) for ( q = 0; q < m; p++ ) if ( q != i && q != j && A[i][q] + A[q][j] < A[i][j] ) return false; return true; } // controle