Précédent   Forum du club des développeurs et IT Pro > Autres langages > Pascal
Pascal Forum d'entraide sur la programmation en langage Pascal et sur les EDI. Avant de poster -> la F.A.Q Pascal, les cours
Partagez cette discussion sur d'autres réseaux sociaux : Viadeo Twitter Google Facebook Digg Delicious MySpace Yahoo
Réponse
 
Outils de la discussion
Publicité
'
Vieux 02/01/2013, 00h53   #1
socco
 
Femme Sara Si-moussi
informatique
Inscription : octobre 2012
Messages : 12
Détails du profil
Informations personnelles :
Nom : Femme Sara Si-moussi
Localisation : Algérie

Informations professionnelles :
Activité : informatique
Secteur : Conseil

Informations forums :
Inscription : octobre 2012
Messages : 12
Points : -2
Points : -2
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 :
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.
socco est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 02/01/2013, 14h12   #2
EtherOS
Membre habitué
 
Avatar de EtherOS
 
Homme Lionel Tidjon
Etudiant Polytechnicien
Inscription : juillet 2012
Messages : 51
Détails du profil
Informations personnelles :
Nom : Homme Lionel Tidjon
Localisation : Cameroun

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

Informations forums :
Inscription : juillet 2012
Messages : 51
Points : 110
Points : 110
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
EtherOS est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 03/01/2013, 23h07   #3
Dr.Who
Membre Expert
 
Avatar de Dr.Who
 
Inscription : septembre 2009
Messages : 980
Détails du profil
Informations personnelles :
Âge : 34

Informations forums :
Inscription : septembre 2009
Messages : 980
Points : 1 175
Points : 1 175
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 :
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 :
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!
Dr.Who est déconnecté   Envoyer un message privé Réponse avec citation 10
Réponse
Outils de la discussion

Navigation rapide


Fuseau horaire GMT +2. Il est actuellement 22h08.


 
 
 
 
Partenaires

Hébergement Web