Conversion d'un nombre entier en mots français

Présentation
Fonction qui convertit un nombre entier (de un à 4 294 967 295) en mots français.
Téléchargement
1  0 
Téléchargé 25 fois Voir les 3 commentaires
Détails
Catégories : Free Pascal
Avatar de Roland Chastain
Rédacteur / Modérateur
Voir tous les téléchargements de l'auteur
Licence : Autre
Date de mise en ligne : 15 octobre 2015




Avatar de Alcatîz Alcatîz - Responsable Pascal, Delphi et Assembleur https://www.developpez.com
le 11/10/2015 à 22:34


Une petite suggestion : passer le dialecte comme paramètre et non plus comme directive de compilation ?
Avatar de Roland Chastain Roland Chastain - Rédacteur/Modérateur https://www.developpez.com
le 12/10/2015 à 0:08
Citation Envoyé par Alcatîz Voir le message
Merci pour les encouragements.

Citation Envoyé par Alcatîz Voir le message
Une petite suggestion : passer le dialecte comme paramètre et non plus comme directive de compilation ?
Fait ! Voici à quoi ressemble la nouvelle version :

Code : Sélectionner tout
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
type
  option = (septante, huitante, nonante);
  options = set of option;

function IntToFrench(const aInt: cardinal; const aOptions: options = []): string;
{ ... }

procedure Test(const aInt: cardinal; const aOptions: options = []);
begin
  WriteLn(Format('%10u %s', [aInt, IntToFrench(aInt, aOptions)]));
end;

begin
  Test(71082093, []);
  Test(71082093, [septante, nonante]);
  Test(71082093, [septante, huitante, nonante]);
end.
Je ne suis pas allé chercher très loin pour les noms des types.
Avatar de Roland Chastain Roland Chastain - Rédacteur/Modérateur https://www.developpez.com
le 15/10/2015 à 11:16
En comparant ma fonction à une que Paul TOTH a postée dans le forum Delphi, je me suis aperçu qu'il y avait une erreur dans ma fonction, concernant le "s" à "quatre-vingt" et à "cent". L'erreur a été rectifiée.

 
Developpez.com décline toute responsabilité quant à l'utilisation des différents éléments téléchargés.
Responsables bénévoles de la rubrique Pascal : Gilles Vasseur - Alcatîz -