' Ordena‡„o de um vector de n£meros ' Chave de totoloto ordenada DECLARE FUNCTION ordena! (v!(), n, o()) DIM n(10), o(10) CLS RANDOMIZE TIMER n(1) = 1 + INT(49 * RND) i = 2 DO n(i) = 1 + INT(49 * RND) repetido = 0 FOR j = 1 TO i - 1 IF n(j) = n(i) THEN repetido = 1 NEXT j IF (repetido = 0) THEN ' PRINT n(i) i = i + 1 ELSE PRINT "Repetido !" END IF LOOP WHILE (i < 7) PRINT "Chave do totoloto" FOR i = 1 TO 6 PRINT n(i) NEXT i ' O que fazer para escrever a chave ordenada ? r = ordena(n(), 6, o()) PRINT "Chave(s) do totoloto:" PRINT "Original", "Ordenada " FOR i = 1 TO 6: PRINT n(i), o(i): NEXT END FUNCTION ordena (v(), n, o()) ' Bubble-sort ' troca - vari vel que indica a ocorrˆncia de uma troca ' Inicializa‡„o FOR i = 1 TO n o(i) = v(i) NEXT i DO troca = 0 FOR i = 1 TO 5 IF o(i) > o(i + 1) THEN SWAP o(i), o(i + 1) troca = 1 END IF NEXT i LOOP WHILE (troca = 1) END FUNCTION