Bon, voilà, je vous présente mon problème : je suis en première année d'école d'ingénieurs et jai un programme à realiser (gestion d'une compagnie d'assurances ). Jusqu'à présent, on s'était contenté d'étudier les variables dynamiques de type pointeur de manière théorique et, au début, ça allait. Mais là j'ai un gros problème avec elles.
J'ai créé une liste ordonnée (récupérée dans un fichier texte) et je voudrais lui chaîner un nouvel élément. Pour ceci, j'ai créé une procédure mais ça ne marche pas (lors de l'exécution, ma fenêtre se referme brusquement).
Voici la syntaxe de cette procédure, si quelqu'un pouvait bien m'expliquer mon erreur, merci d'avance.
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 ---------------declaration des types employes( ca peut etre utile)---------- interface //Définition de type type T_donnee = record nom:string; //nom du societaire coeff_malus:real; //coefficient malus du societaire cotisation_base:real; //cotisation de base du societaire end; T_ptr_societaire=^T_societaire; T_societaire = record info_societaire : T_donnee; psuiv: T_ptr_societaire; end; --------------------------declaration du ssp---------------------------- PROCEDURE AJOUT_VD_LO(pnouvLO:T_ptr_societaire;var pdebLO:T_ptr_societaire); var pcour:T_ptr_societaire; //type de mon pointeur trouve:boolean; begin trouve:=false; pcour:=pdebLO; while (not trouve) and (pcour<>nil) do if pnouvLO^.info_societaire.nom<pcour^.info_societaire.nom then trouve:=true else begin pcour:=pcour^.psuiv; if pcour^.info_societaire.nom=pnouvLO^.info_societaire.nom then //ne rein faire else begin pcour^.psuiv:=pcour; pcour^.info_societaire:=pnouvLO^.info_societaire; end; end;
Partager