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 :

Liste chaînée, saisie Read/ReadLn, erreur d'exécution


Sujet :

Turbo Pascal

  1. #1
    Nouveau candidat au Club
    Profil pro
    Inscrit en
    Octobre 2009
    Messages
    2
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2009
    Messages : 2
    Par défaut Liste chaînée, saisie Read/ReadLn, erreur d'exécution
    Bonjour, j'ai écrit une procédure qui permet de saisir une liste mais je ne vois pas où est le problème ! Merci de votre réponse. voici le sous-programme :
    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
    type element= char;
         liste = ^cellule;
         cellule =
           record
             val: element;
             suiv: liste
           end;
     
    procedure saisie (var p:liste);
    var q:liste;
    begin
      p:= NIL;
      while not eoln do
      begin
        if q=nil then
        begin
          new(q);
          p:=q;
          read(q^.val);
        end
        else
        begin
          new(q^.suiv);
          q:=q^.suiv;
          read(q^.val);
        end;
      end;
    end;

  2. #2
    Membre Expert
    Avatar de Dr.Who
    Inscrit en
    Septembre 2009
    Messages
    980
    Détails du profil
    Informations personnelles :
    Âge : 46

    Informations forums :
    Inscription : Septembre 2009
    Messages : 980
    Par défaut
    haaa une liste chainée :

    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
    65
    66
    67
    68
    69
    70
    71
    72
    73
     
    type 
      TValue = char;
     
      PCell = ^TCell;
      TCell = packed record
        Value: TValue;
        Next : PCellule;
      end;
     
      TList = object
        Count : integer;
        First : PCell;
        Last : PCell;
        procedure Init;
        procedure Release;
        procedure Add(const Value: TValue);
       end;
     
    procedure TList.Init;
    begin
      Count := 0;
      First := nil;
      Last := nil;
    end;
     
    procedure TList.Release;
    var C,N : PCell;
    begin
      C := First;
      while C <> nil do
      begin
        N := C^.Next;
        Dispose(C);
        C := N;
      end;
      Count := 0;
      First := nil;
      Last := nil;
    end;
     
    procedure TList.Add(const Value: TValue);
    var L : PCell;
    begin
      if count = 0 then
      begin
        new(First)
        First^.Value := Value;
        First^.next := nil;
        Last := First;
      end
      else
      begin
        new(L);
        L^.Value := Value;
        L^.Next  := nil;
        Last^.Next := L;
        Last := L;
      end;
      inc(count);
    end;
     
    procedure Push(const List: TList);
    var V : TValue;
    begin
      List.Release;
     
      while not eoln do
      begin
        readln(V);
        List.add(V);
      end;
    end;
    [ Sources et programmes de Dr.Who | FAQ Delphi | FAQ Pascal | Règlement | Contactez l'équipe ]
    Ma messagerie n'est pas la succursale du forum... merci!

Discussions similaires

  1. remplissage zone de liste (Combobox) : Erreur d'exécution 1004 !?
    Par ln0331 dans le forum Macros et VBA Excel
    Réponses: 2
    Dernier message: 05/02/2008, 17h02
  2. [bash][Débutant] Erreurs d'exécution avec read
    Par Alcatîz dans le forum Shell et commandes GNU
    Réponses: 6
    Dernier message: 14/09/2007, 15h28
  3. Problème de listes chaînées ou de saisie
    Par mathrb dans le forum C
    Réponses: 7
    Dernier message: 12/03/2007, 12h52
  4. Réponses: 16
    Dernier message: 19/11/2005, 16h47
  5. Réponses: 15
    Dernier message: 01/11/2005, 13h32

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