Identifier une série de ligne en Qbasic 1.1

Résolu/Fermé
tonyhawk Messages postés 22 Date d'inscription jeudi 14 février 2008 Statut Membre Dernière intervention 21 février 2008 - 14 févr. 2008 à 17:08
tonyhawk Messages postés 22 Date d'inscription jeudi 14 février 2008 Statut Membre Dernière intervention 21 février 2008 - 21 févr. 2008 à 14:39
Bonjour,

Je travaille avec Qbasic 1.1 et pour des fin de calculs de volume d'arbres j,aimerais en lecture/écriture séquentielle d'un fichier .txt identifier un nombre de ligne pour pouvoir faire des opération mathématique sur plus d'une ligne à la fois à utiliser dans une boucle
For i%= 1 to val(mid$(a$, 16, 8)
...
Next i%

8 réponses

Bonjour

Il manque une parenthèse et une question
0
tonyhawk Messages postés 22 Date d'inscription jeudi 14 février 2008 Statut Membre Dernière intervention 21 février 2008
14 févr. 2008 à 17:28
oui oui c'est bon, j'ai juste pas fait un copier colle du bout de programme que j'ai fait, mettons que cette paranthèse aurait finni par faire son apparition! Ce qui me pose problème c'est de mettre en mémoire une certaine quantité de lignes pour pouvoir les réutilisé pour des calculs

merci
0
tonyhawk Messages postés 22 Date d'inscription jeudi 14 février 2008 Statut Membre Dernière intervention 21 février 2008
14 févr. 2008 à 17:36
CLS 0
DIM SHARED nom AS STRING
DIM SHARED vol AS STRING
'DIM SHARED i AS INTEGER

INPUT "fichier d'arbres: "; nom
INPUT "fichier de volume: "; vol

OPEN nom FOR INPUT AS #1

WHILE NOT EOF(1)

LINE INPUT #1, a$
IF ASC(a$) > 65 THEN a% = VAL((MID$(a$, 16, 8)))
FOR i% = 1 TO a%
LINE INPUT #1, b$
??? = MID$(b$, 1, 8)
NEXT i%
'le calcul serait de faire la s‚lectioner sur ligne en cour moins la valeur sur ligne suivante

Avec le fichier input structuré comme suit
BGEP2123 0 13 1 . . 22 22
0.00 8.90 2.76 9.06 0.00 0
0.98 8.78 2.68 8.82 0.08 90
4.17 8.41 4.63 8.32 0.24 0
8.33 8.27 5.79 7.59 0.08 90
12.50 7.99 7.05 7.49 0.04 0
16.67 7.81 8.80 7.19 0.16 0
20.83 8.48 9.86 6.96 0.16 0
25.00 8.43 11.08 6.21 0.10 0
29.17 8.44 10.91 6.03 0.26 0
33.33 7.52 10.39 5.28 0.12 0
37.50 8.01 9.63 4.94 0.12 0
41.67 6.95 7.83 4.26 0.14 90
44.42 6.77 7.56 3.82 0.04 90
0
Pour mettre en mémoire une certaine quantité de lignes, il faut définir un tableau.
Si tu ne peux connaître le nombre de lignes qu'après avoir lu le tableau et que le redim n'existe pas en qbasic, il faut lire le fichier une première fois, dimensionner le tableau puis relire depusi le début

Enfin, le rapport entre le parcours d'un fichier et un val(mid$(a$, 16, 8) ) m'échappe totalement.
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
tonyhawk Messages postés 22 Date d'inscription jeudi 14 février 2008 Statut Membre Dernière intervention 21 février 2008
14 févr. 2008 à 17:43
c'est pour aller chercher le 13 sur la première ligne : ce 13 dit qu'il y a 13 ligne à prendre en compte pour les calculs subséquents
0
En quoi l'utilisation d'un tableau te pose-t-elle un problème ?
0
tonyhawk Messages postés 22 Date d'inscription jeudi 14 février 2008 Statut Membre Dernière intervention 21 février 2008
14 févr. 2008 à 18:03
C'est mon deuxième programme, ça fait 2 semaines que je bizounne sur QBasic car je n'ai pas le choix (utilisation d'un vieux programme de simulation de sciage en windows 3.11) Je viens de trouver un bon tutoriel pour m'expliquer les tableaux. Merci de la piste!!
http://www.cybwarrior.com/default.php
0
tonyhawk Messages postés 22 Date d'inscription jeudi 14 février 2008 Statut Membre Dernière intervention 21 février 2008
21 févr. 2008 à 14:39
merci
0