Publié par SFLPMEA le 10/01/2010
CREADIC2.BAS Source Qbasic 4.5. Création d’un GROS dictionnaire. Voir le sujet ‘ Un dictionnaire en Qbasic’ pour toutes informations. Par SFLPMEA ;
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127
'********************************* '* CREATION 'GROS'DICTIONNAIRE * C:\DICO\CREADIC2.BAS '********************************* DIM M31 AS STRING * 31 OPEN "C:\DICO\FRANCAIS.TXT" FOR RANDOM AS 1 LEN = 1 FIELD 1, 1 AS Lettre$ Nb! = LOF(1): 'PRINT Nb!: SLEEP 5 OPEN "C:\DICO\DIC2.DIC" FOR RANDOM AS #2 LEN = 32 FIELD 2, 31 AS M$, 1 AS S$ CLS : Mot$ = "": Debut! = TIMER FOR E1! = 1 TO LOF(1) GET 1, E1! 'COLOR 10: PRINT USING "###### ### "; E1!; : PRINT ASC(Lettre$); 'COLOR 11: PRINT "*" + Lettre$ + "* " 'SLEEP IF ASC(Lettre$) > 10 THEN Mot$ = Mot$ + Lettre$ ELSE M31 = Mot$ l% = l% + 1 IF l% > 25 THEN l% = 1: CLS : 'SLEEP: CLS END IF E2! = E2! + 1 'LOCATE l%, 2: COLOR 15: PRINT USING "###### "; E2!; : PRINT "*" + M31 + "*" p% = O DO p% = INSTR(M31, "â") ' a circ IF p% > 0 THEN MID$(M31, p%) = "ƒ" LOOP UNTIL p% = 0 DO p% = INSTR(M31, "ä") ' a trema IF p% > 0 THEN MID$(M31, p%) = "„" LOOP UNTIL p% = 0 DO p% = INSTR(M31, "à") ' a grave IF p% > 0 THEN MID$(M31, p%) = "†" LOOP UNTIL p% = 0 DO p% = INSTR(M31, "é") ' e aigu IF p% > 0 THEN MID$(M31, p%) = "‚" LOOP UNTIL p% = 0 DO p% = INSTR(M31, "ê") ' e circ IF p% > 0 THEN MID$(M31, p%) = "ˆ" LOOP UNTIL p% = 0 DO p% = INSTR(M31, "ë") ' e trema IF p% > 0 THEN MID$(M31, p%) = "‰" LOOP UNTIL p% = 0 DO p% = INSTR(M31, "è") ' e grave IF p% > 0 THEN MID$(M31, p%) = "Š" LOOP UNTIL p% = 0 DO p% = INSTR(M31, "î") ' i circ IF p% > 0 THEN MID$(M31, p%) = "Œ" LOOP UNTIL p% = 0 DO p% = INSTR(M31, "ï") ' i trema IF p% > 0 THEN MID$(M31, p%) = "‹" LOOP UNTIL p% = 0 DO p% = INSTR(M31, "ô") ' o circ IF p% > 0 THEN MID$(M31, p%) = "“" LOOP UNTIL p% = 0 DO p% = INSTR(M31, "ù") ' u grave IF p% > 0 THEN MID$(M31, p%) = "—" LOOP UNTIL p% = 0 'LOCATE l%, 45: COLOR 14: PRINT "*" + M31 + "*" LSET M$ = M31: LSET S$ = " " PUT #2, E2! Mot$ = "" IF E2! MOD 20 = 0 THEN LOCATE 25, 40: PRINT USING "######"; E2! END IF NEXT E1! LOCATE 26, 20: PRINT USING "####### Enregistrements cr‚‚s en ###.### sec"; E2!; TIMER - Debut! N! = E2! SLEEP 5: Debut! = TIMER FOR E2! = 1 TO N!' LOF(2) GET #2, E2! IF E2! MOD 100 = 0 THEN LOCATE 27, 20: PRINT USING "#######"; E2! END IF NEXT E2! LOCATE 28, 20 PRINT USING "####### Enregistrements lus en ###.### sec"; E2!; TIMER - Debut!