IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Turbo Pascal Discussion :

Turbo Pascal et Windows 7 - 64 bits [Turbo Pascal]


Sujet :

Turbo Pascal

  1. #21
    Rédacteur/Modérateur

    Avatar de Roland Chastain
    Homme Profil pro
    Enseignant
    Inscrit en
    Décembre 2011
    Messages
    4 072
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 50
    Localisation : France, Moselle (Lorraine)

    Informations professionnelles :
    Activité : Enseignant

    Informations forums :
    Inscription : Décembre 2011
    Messages : 4 072
    Points : 15 462
    Points
    15 462
    Billets dans le blog
    9
    Par défaut
    @DomDA91

    Merci pour toutes ces informations.

    Je confirme que l'usage de real48 paraît résoudre le problème. Voici un premier essai de lecture du fichier de mouvements :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    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
     
    program lecture_fichier_mouvements;
     
    {$MODE TP}
    {$DEFINE USE_REAL48}
     
    const
      lib_long = 15;
     
    type
      mvt = record
        dop, dval: word;
        montant: {$IFDEF USE_REAL48}real48{$ELSE}real{$ENDIF};
        cdeb, ccred: byte;
        libelle: string[lib_long];
        cb, point: char;
      end;
      cpt = record
        libelle: string[lib_long];
        soldop: {$IFDEF USE_REAL48}real48{$ELSE}real{$ENDIF};
        retard: integer;
      end;
     
    const
      chemin: string = '.\percom\';
      nommvt: string = 'cmvt.fce';
      maxmvt = 2000;
      maxcpt = 40;
     
    var
      fichmvt: file of mvt;
      erreurG: boolean;
      journal: array[1..maxmvt] of mvt;
     
    procedure Lis_Journal;
    var
      i: word;
    begin
    {$I-}
      assign(fichmvt, chemin + nommvt);
      reset(fichmvt);
      erreurG := (IOresult <> 0);
    {$I+}
      if erreurG then
      begin
        writeln('LE FICHIER ', nommvt, ' N''EXISTE PAS DANS ', chemin);
      end else
      begin
        i := 0;
        while not eof(fichmvt) do
        begin
          inc(i);
          read(fichmvt, journal[i]);
     
          writeln(journal[i].libelle);
        end;
        close(fichmvt);
      end;
    end;
     
    begin
      Lis_Journal;
      readln;
    end.
    Résultat avec real :

    Code X : Sélectionner tout - Visualiser dans une fenêtre à part
    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
    M        V Ê-Ò-å├§(\
     Ë-Ò-åàÙQ©T                                                                   
    
             P È-Ò-äffffF
     È-Ë-ç    4                                                                  
    y
                   P                                                               
             V Ï-Ò-ê   Ç
     ┘-┘-âñp=
    
    u
                   P                                                               
             P ┌-Ò-ç
     █-Ò-àÜÖÖÖ
    4
                   P                                                               
             P ▀-Ì-ç
     ß-Ò-å
    ÎúpS   
    
             P Ô-Ò-êÎúp²=
     Ô-Ò-å\Å┬§S                                                                  
    o               P                                                            
             P õ-õ-ë    g
     õ-ý-ê«Gß║X                                                                  
    SFr elecom      V                                                            
             P Õ-Õ-è    z
     µ-.à«Gßz    leclerc                                                        
    +      TCL TOM        V
             V ¾-¾-ê    
     ÷-÷-âñp=
    
    
             **    è    z
    *    ï    EDF
    
             **    è    z
    *    è    (VACANCE
           DEP COM        **
    S        **    ä    @
    *    è    z LIVRE-D
    
             **    à                                                                
    *    ï    z SALAIRE
    
    CIAUX    **
    *    ì   @ BANQUE
    ; CEPARGNE       **                                                           
    S        **    è    z
    *    ï    zINVESTI
    
             **    ç    H
    *    Ä   @ TRACEA
    
    L        **
    *    ç(73│  DETTES
    
             **

    Avec real48 :

    Code X : Sélectionner tout - Visualiser dans une fenêtre à part
    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
    TCL TOM
    Leclerc
    
    
    
    
    
    
    
    
    
    
    
    
    
    
    
    
    
    THIRIET
    
    
    
    
    
    
    
    Fr elecom
    
    
    leclerc
    TCL TOM
    
    
    
    LOGEMENT
    BOUFFE
    VOITURE
    EDF
    VETEMENTS
    0
    CADEAUX
    VACANCES
    DEP COM
    SORTIES
    BON (ST)
    LIVRE-DISQUE
    FRAIS FINANC
    IMPOTS
    DIVERS
    SALAIRE
    PROD. FINANC
    ORG.SOCIAUX
    
    BANQUE
    CEPARGNE
    ACTIONS
    LCL
    INVESTISSEME
    LEL
    MAISON
    PRETS
    TRACEA
    ASS VIE
    CAPITAL
    EMPRUNTS
    DETTES

    Plutôt que de modifier le programme, je pense qu'il sera plus simple d'écrire un petit programme séparé qui convertira le fichier.
    Mon site personnel consacré à MSEide+MSEgui : msegui.net

  2. #22
    Rédacteur/Modérateur

    Avatar de Roland Chastain
    Homme Profil pro
    Enseignant
    Inscrit en
    Décembre 2011
    Messages
    4 072
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 50
    Localisation : France, Moselle (Lorraine)

    Informations professionnelles :
    Activité : Enseignant

    Informations forums :
    Inscription : Décembre 2011
    Messages : 4 072
    Points : 15 462
    Points
    15 462
    Billets dans le blog
    9
    Par défaut
    Conversion du fichier terminée !

    Une fois le programme relié au nouveau fichier, l'avertissement initial n'apparaît plus. Après il faut voir si le programme fonctionne vraiment mais en tout cas c'est en bonne voie.

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    // Fusionné tous les fichiers au moyen de l'outil DIPP
    // http://www.yunqa.de/delphi/products/dipp/index
    // et du fichier de commande DIPP.CMD
    // Supprimé caractère #26 dans Notepad++ (rechercher expression régulière '\x1A', remplacer par '')
    // Supprimé la directive {$H+}
    // Changé l'encodage du fichier (d'OEM en UTF-8 sans BOM) et le nom (de "COMPTE.PAS" en "compta.pas")
    // Changé la valeur de la variable chemin (de 'c:\mesdoc\percom\' en '.\percom\')
    // Supprimé le corps de la procédure beep()
    // Trouvé une directive {$I+} mal formée ('{I+}') // <---
    // Peut-être la cause de l'erreur initiale ?
    // Converti le fichier de mouvements au moyen d'un programme séparé
    // Relié le programme au nouveau fichier
    // Supprimé les variables non utilisées
    Fichiers attachés Fichiers attachés
    Mon site personnel consacré à MSEide+MSEgui : msegui.net

  3. #23
    Futur Membre du Club
    Profil pro
    En reconversion
    Inscrit en
    Mars 2005
    Messages
    9
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations professionnelles :
    Activité : En reconversion

    Informations forums :
    Inscription : Mars 2005
    Messages : 9
    Points : 6
    Points
    6
    Par défaut
    Eh ben voilà ! merci à tous pour votre aide !

    NB: pouvez-vous joindre le programme de conversion ? ça m'évitera de le refaire
    Merci encore

  4. #24
    Rédacteur/Modérateur

    Avatar de Roland Chastain
    Homme Profil pro
    Enseignant
    Inscrit en
    Décembre 2011
    Messages
    4 072
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 50
    Localisation : France, Moselle (Lorraine)

    Informations professionnelles :
    Activité : Enseignant

    Informations forums :
    Inscription : Décembre 2011
    Messages : 4 072
    Points : 15 462
    Points
    15 462
    Billets dans le blog
    9
    Par défaut
    Citation Envoyé par Demont Voir le message
    pouvez-vous joindre le programme de conversion ? ça m'évitera de le refaire
    Tout est inclus dans la pièce jointe de mon message précédent.

    Citation Envoyé par Demont Voir le message
    Merci encore
    Pas de quoi, c'était très instructif. Et maintenant vous pouvez dire adieu à Turbo Pascal.
    Mon site personnel consacré à MSEide+MSEgui : msegui.net

+ Répondre à la discussion
Cette discussion est résolue.
Page 2 sur 2 PremièrePremière 12

Discussions similaires

  1. [Turbo Pascal] Turbo Pascal sous Windows XP
    Par MichelR dans le forum Turbo Pascal
    Réponses: 21
    Dernier message: 17/03/2011, 10h10
  2. gerer l'imprimante en turbo pascal pour windows
    Par caolis dans le forum Documents
    Réponses: 1
    Dernier message: 12/10/2006, 14h41
  3. [Turbo Pascal] Installation de Turbo Pascal sous Windows XP
    Par serve dans le forum Turbo Pascal
    Réponses: 18
    Dernier message: 31/12/2003, 08h24
  4. tpw turbo pascal for windows
    Par tripper.dim dans le forum Turbo Pascal
    Réponses: 3
    Dernier message: 29/11/2003, 23h06

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo