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

Pascal Discussion :

Tableau à une dimension : erreur "illegal expression"


Sujet :

Pascal

  1. #1
    Futur Membre du Club
    Femme Profil pro
    informatique
    Inscrit en
    Octobre 2012
    Messages
    14
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : Algérie

    Informations professionnelles :
    Activité : informatique
    Secteur : Conseil

    Informations forums :
    Inscription : Octobre 2012
    Messages : 14
    Points : 6
    Points
    6
    Par défaut Tableau à une dimension : erreur "illegal expression"
    Bonsoir,

    Bonne année tout d'abord.
    J'aimerais solliciter votre aide à propos d'un message d'erreur sur une procédure !



    Voilà j'ai voulu créer une procédure ECRIT1D pour écrire un tableau à une dimension et puis du coup il me dit "illegal expression" ; voici le source du programme test avec la procédure en module interne :
    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
     
    program test;
    type TAB=array[1..1000]of longint;
    Var T:TAB;
        L:longint;
     
    {$i C:\ALGO\MODULES\procedures\LECT1DE.pas}
     
    procedure ECRIT1D(Var Tbl:TAB; Var Taille:longint);
    var i:longint;
    begin
    for i:=1 to Taille do
     Write(Tbl[i]);
    end;
     
    begin
    LECT1DE(T,L);
    ECRIT1D(T,L);
    end.

  2. #2
    Membre actif
    Avatar de EtherOS
    Homme Profil pro
    Etudiant Polytechnicien
    Inscrit en
    Juillet 2012
    Messages
    58
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Cameroun

    Informations professionnelles :
    Activité : Etudiant Polytechnicien
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Juillet 2012
    Messages : 58
    Points : 233
    Points
    233
    Par défaut Proposition
    Source d'erreurs:
    ============
    => Vérifier si le répertoire du fichier inclut est valide
    => la taille L = ? (pas initialisé)
    => mettre un readln à la fin pour afficher vos procédures lors de l'éxécution.

    Bonne Année 2013

  3. #3
    Membre éprouvé
    Avatar de Dr.Who
    Inscrit en
    Septembre 2009
    Messages
    980
    Détails du profil
    Informations personnelles :
    Âge : 45

    Informations forums :
    Inscription : Septembre 2009
    Messages : 980
    Points : 1 294
    Points
    1 294
    Par défaut
    Pourquoi faire un include ?

    utilise Uses.

    ensuite essaye de ne pas nommer tes unités comme tes fonctions :

    ULect1D <- U pour unité
    TLect1D <- T pour type
    vLect1D <- v pour variable (voir vl (locale) et vg (globale))
    cLect1D <- c pour constante
    Lect1D <- fonction/procedure

    exemple :

    fichier UArray1D.pas
    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
     
    unit UArray1D;
     
    interface
     
    const
      cArray1DMax = 1000;
     
    type
      TArray1D = array[0..cArray1DMax-1] of LongInt;
     
    procedure Array1DInitialize(var aArray1D: TArray1D; aDefault: LongInt);
    procedure Array1DRead(var aArray1D: TArray1D);
    procedure Array1DWrite(aArray1D: TArray1D);
     
    implementation
     
    procedure Array1DInitialize(var aArray1D: TArray1D; aDefault: LongInt);
    var X: LongInt:
    begin
      for X := 0 to cArray1DMax-1 do
        aArray1D[X] := aDefault;
    end;
     
    procedure Array1DRead(var aArray1D: TArray1D);
    var X: LongInt:
    begin
      for X := 0 to cArray1DMax-1 do
      begin
        write('Entrez le nombre numero ', X,' : ');
        readln(aArray1D[X]);
      end;
    end;
     
    procedure Array1DWrite(aArray1D: TArray1D);
    var X: LongInt:
    begin
      for X := 0 to cArray1DMax-1 do
      begin
        write(aArray1D[X],' ');
      end;
    end;
     
    end.

    Le programme :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
     
    program Test;
     
    uses UArray1D;
     
    var 
      a1d : TArray1D;
     
    begin
      Array1DInitialize(a1d, 0);
      Array1DRead(a1d);
      Array1DWrite(a1d);
    end.
    Bon code et bon néné
    [ 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. [FPDF] Tableau à une dimension contenant des valeurs
    Par kluck3000 dans le forum Bibliothèques et frameworks
    Réponses: 5
    Dernier message: 23/05/2008, 13h34
  2. Tri d'un tableau à une dimension
    Par Philippe PONS dans le forum VBA Access
    Réponses: 2
    Dernier message: 04/02/2008, 18h51
  3. Réponses: 4
    Dernier message: 17/01/2008, 17h06
  4. tableau à une dimension sans taille
    Par oscar.cesar dans le forum Macros et VBA Excel
    Réponses: 3
    Dernier message: 06/11/2007, 20h43

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