| 12
 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
 
 | program client;
 
function facture:integer;
{achat des produit}
 var paie,s :integer;
 begin
 s:=0;
 writeln('Veuillez effectuer vos achats :');
 repeat
  write('Entrez le prix du produit voulu: ');readln(paie);  
  s:=s+paie;
 until paie=0;
 facture:=s;
end;
 
function relicat:integer;{difference entre somme payée et somme due}
{lecture de la somme payée}
 var paie,s:integer;
 begin
 s:=facture;
 writeln('Vous avez effectuez une depense egale à: ',s);
 repeat
 write('Veuillez payer lan facture: '); readln(paie);
 if (paie<s) then
  writeln('cette somme est inferieur aux depenses');
 until paie>=s;
 relicat:=paie-s;
end;
 
procedure simulremise(a: integer);
{simule la remise de la monaie}
 const monaie:array[1..8]of integer=(1,5,10,20,50,100,200,500);
     {les differentes coupures et aussi les centimes}
     {tu auras à completer la suite}
 var i,q,r:integer;
begin
if a<>0 then
 begin
 writeln('Remise de monnaie :');
 for i:=8 downto 1 do
  begin
  q:=a div monaie[i];
  a:=a mod monaie[i];
  {tu verras pour les accords}
  if q<> 0 then
    writeln(q,' coupure de ',monaie[i],' euro');
  end;
  end;
  writeln;
  writeln('Merci pour votre visite dans notre magasin');
 end;
 
{corps du programme}
BEGIN
simulremise(relicat);
readln;
end. | 
Partager