Bonsoir tout le monde.
Je suis étudiant en 1e année de DUT Informatique et je sollicite votre aide sur un projet qui nous a été donné.
Le but final de l'exercice est de gérer un fichier (.dat) dans le quel on retrouve une liste de véhicules à vendre. Le fichier se présente de la manière suivante:
On doit afficher la liste des véhicules, ensuite, afficher le nombre de véhicules pour chaque type de carburant et afficher le véhicule le plus récent.Marque
Modèle
Carburant (E,D ou Z)
Année
Prix
J'ai réussi à afficher la liste de véhicules, mais je suis bloqué au niveau de la deuxième partie de l'exercice.
Voila le programme que j'ai pour le moment :
Pouvez-vous me dire quel est le problème svp ?
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
74
75
76
77
78
79
80
81
82
83
84 PROGRAM Voitures; TYPE voiture = record marque : string[30]; modele : string[20]; carb : char; annee : integer; prix : integer; end; TYPE liste = ^cellule; cellule = record contenu : voiture; suivant : liste; end; function carburant(a,b,c : integer) : integer; VAR m : char; W : file of voiture; i : voiture; Begin a:=0; b:=0; c:=0; assign(W, 'voitures.dat'); reset(W); while not EOF(W) do begin read(W,i); m := i.carb; if (m='E') then a := a+1 else if (m='D') then b := b+1 else if (m='C') then c := c+1 end; end; VAR V : file of voiture; i : voiture; o : char; x,y,z,p : integer; Begin writeln('Que voulez-vous faire ?'); writeln('1) Quittez le logiciel'); writeln('2) Afficher les véhicules disponible a la vente'); writeln('3)Afficher le nombre de vhéicules fonctionant à une énérgie donnée'); writeln('4)Supprimer le véhicule le plus récent de la liste chainée'); readln (p); If p=1 then exit; if p=2 then begin assign(V, 'voitures.dat'); reset(V); x:=0; y:=0; z:=0; while not EOF(V) do begin read(V,i); writeln(i.marque); writeln(i.modele); writeln(i.carb); writeln(i.annee); writeln(i.prix); end; end; if p=3 then writeln(carburant(x,y,z)); if p=4 then writeln ('4 Marche bien'); end.
Merci d'avance
Partager