Informations sur: CREADIC2.BAS

Publié par SFLPMEA le 10/01/2010

Description

CREADIC2.BAS Source Qbasic 4.5. Création d’un GROS dictionnaire. Voir le sujet ‘ Un dictionnaire en Qbasic’ pour toutes informations. Par SFLPMEA ;

Code source (langage qbasic)

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!
    
 
v6 © Computaid SPRL 2005-2012 - Tous droits réservés - Hébergé par eTigris - Page générée en 0,014 s - Crédits - Stats
1 connecté