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:
Marque
Modèle
Carburant (E,D ou Z)
Année
Prix
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.
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 :
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.
Pouvez-vous me dire quel est le problème svp ?
Merci d'avance