![]() | ![]() | ![]() | ![]() | ![]() | ![]() |
Accès au ressources suivantes:
| Travail sur:
|
Un fichier binaire directement utilisable en Basic Etendu que l'on charge ainsi:
Ou 12 fois plus vite avec le FastLoader fourni:
Le compilateur est chargé en mémoire! Il vous reste à remplir les lignes de DATA contenant
| Préparez sur un PC votre travail:
|
MLC.ZIP | Contenu:
|
Contenu:
|
Voici une petite vidéo qui montre la séquence Edition, Compilation et test du programme. Pour l'édition vous pouvez choisir votre éditeur favori, pour moi c'est QuickEditor 3.5. Pour le test, j'utilise l'émulateur Classic99 doté d'un très bon Debugger. |
100 CALL CLEAR $MLC F 110 10 3000 310 CALL LINK("ERATHO",C) 320 PRINT C;" prime numbers"::PRINT "from 2 to 32767." 330 END $ERATHO DIMSET 2 32767 A ; A est défini comme l'ensemble des entiers de 2 à 32767 SETFILL A ; remplit A LET B 2 ; premier élément à trouver DO SETFINDNEXT A B ; cherche le premier élément à partir de la position B dans A WHILE= ; Si oui, alors renvoit dans B ce nombre premier LET C B ; copie B dans C DO ADD C B ; calcule 2*B, 3*B, 4*B, etc... WHILE> ELEMENT- A C ; et enlève de l'ensemble A tous ses multiples LOOP INC B ; regarde si il y a un autre nombre premier après B LOOP SETCARD A C ; calcule le cardinal de A et le range dans C PUTPARAM 1 C ; renvoie ce résultat $$ $END | Notes:
|
100 CALL CLEAR 110 DIM IO(3) 120 CALL INIT::PRINT "LOADING COMPILER..."::CALL LOAD("DSK1.NEWFLO")::CALL LINK("NEWFLO") 130 IO(1)=3000::CALL LINK("COMPIL",IO(),S$(),C$())::If IO(1) THEN PRINT "Error ";IO(1)::END 140 PRINT "COMPILATION OK!" 310 CALL LINK("ERATHO",C) 320 PRINT C;" prime numbers"::PRINT "from 2 to 32767." 330 END 3000 DATA P 3010 DATA ERATHO 3020 DATA "FD2.32767A FOA =B2 LA FFAB _B !=B =CB LC +CB _D !>D F-AC BC LD IB BA LB FCAC P1C" 3030 DATA ""3040 DATA "" | Notes:
|