braWeb
Messages postés111Date d'inscriptionsamedi 21 août 2004StatutMembreDernière intervention28 octobre 2014
-
5 juin 2006 à 21:50
cs_kamalz
Messages postés26Date d'inscriptionsamedi 15 octobre 2005StatutMembreDernière intervention27 juillet 2006
-
8 juin 2006 à 22:58
Cette discussion concerne un article du site. Pour la consulter dans son contexte d'origine, cliquez sur le lien ci-dessous.
cs_kamalz
Messages postés26Date d'inscriptionsamedi 15 octobre 2005StatutMembreDernière intervention27 juillet 2006 8 juin 2006 à 22:58
Bon début, ça manque d'entretien ...
cs_Nono40
Messages postés962Date d'inscriptionmercredi 3 avril 2002StatutMembreDernière intervention12 septembre 20062 7 juin 2006 à 23:04
Trois remarques.
- Le case avec les 101 cas, ce n'est pas top. Utilise plutôt un tableau constant
- Le code n'est pas indenté correctement
- Le code peut se simplifier énormément avec un méthode récursive tout en gardant ta logique :
function Centaine (i: integer) : String; { NOM DES CHIFFRES }
begin
case i of
1..100: Result:=chif(i);
101..199: Result:=' cent ' + Chif(i mod 100);
200..999: case (i mod 100) of
0: Result:=Chif(i div 100) + ' cent';
1..99: Result:=Chif(i div 100) + ' cent ' + Chif(i mod 100);
end;
1000..999999: case (i div 1000) of
1: Result:=' mille '+ Centaine(i mod 1000);
2..999:Result:=Centaine(i div 1000)+' milles '+ Centaine(i mod 1000);
end;
1000000..999999999: Result:= Centaine(i div 1000000)+' millions '+ Centaine(i mod 1000000);
end;
end;
procedure TForm1.Button1Click(Sender: TObject);
var i:Int64;
begin
i:=StrToInt64(edit1.Text);
if (i <= 999999999) then
edit2.Text:= Centaine(i)
else
edit2.Text:= Centaine(i div 1000000000)+' milliards '+ Centaine(i mod 1000000000);
end;
yano2005
Messages postés15Date d'inscriptiondimanche 25 décembre 2005StatutMembreDernière intervention 5 septembre 2007 6 juin 2006 à 22:39
Bon merci pour les commentaires sinon je m'attendaids à ça avt tout en tant que débutant sinon dans notre monnaie ya pas de chiffres aprés la virgule
dans tout le cas merci c'est déjà bon pour moi que je puisse faire un prg
je m'escuse pour les exe
je souhaite etre consistant prochainement
hurrycane
Messages postés117Date d'inscriptionsamedi 4 janvier 2003StatutMembreDernière intervention19 juin 20091 6 juin 2006 à 13:17
et puis c'est ta premiere source et c'est les premiers commentaires alors ne prend pas mal !
et bon courage et bonne continuation et bonne programmation yano :)
yvessimon
Messages postés637Date d'inscriptionmardi 22 avril 2003StatutMembreDernière intervention 9 janvier 2017 6 juin 2006 à 08:46
et zéro !
Filtre les caractères entrés afin d'avoir que des chiffres 0 à 9
Francky23012301
Messages postés400Date d'inscriptionsamedi 6 août 2005StatutMembreDernière intervention11 février 20161 6 juin 2006 à 00:34
Salut,
Et deux executables deux : c'est une nouvelle mode sur CS ?? Pour la nième fois, il est interdit de mettre des executables
braWeb
Messages postés111Date d'inscriptionsamedi 21 août 2004StatutMembreDernière intervention28 octobre 2014 5 juin 2006 à 21:50
Salut
ce sujet a été déja Déposé et ta source ne prend pas l'aprés Virgule et dans une Facture Les TTC ne sont Pas des enties juste Une remarque
Bon chance
8 juin 2006 à 22:58
7 juin 2006 à 23:04
- Le case avec les 101 cas, ce n'est pas top. Utilise plutôt un tableau constant
- Le code n'est pas indenté correctement
- Le code peut se simplifier énormément avec un méthode récursive tout en gardant ta logique :
function Centaine (i: integer) : String; { NOM DES CHIFFRES }
begin
case i of
1..100: Result:=chif(i);
101..199: Result:=' cent ' + Chif(i mod 100);
200..999: case (i mod 100) of
0: Result:=Chif(i div 100) + ' cent';
1..99: Result:=Chif(i div 100) + ' cent ' + Chif(i mod 100);
end;
1000..999999: case (i div 1000) of
1: Result:=' mille '+ Centaine(i mod 1000);
2..999:Result:=Centaine(i div 1000)+' milles '+ Centaine(i mod 1000);
end;
1000000..999999999: Result:= Centaine(i div 1000000)+' millions '+ Centaine(i mod 1000000);
end;
end;
procedure TForm1.Button1Click(Sender: TObject);
var i:Int64;
begin
i:=StrToInt64(edit1.Text);
if (i <= 999999999) then
edit2.Text:= Centaine(i)
else
edit2.Text:= Centaine(i div 1000000000)+' milliards '+ Centaine(i mod 1000000000);
end;
6 juin 2006 à 22:39
dans tout le cas merci c'est déjà bon pour moi que je puisse faire un prg
je m'escuse pour les exe
je souhaite etre consistant prochainement
6 juin 2006 à 13:17
et bon courage et bonne continuation et bonne programmation yano :)
6 juin 2006 à 08:46
Filtre les caractères entrés afin d'avoir que des chiffres 0 à 9
6 juin 2006 à 00:34
Et deux executables deux : c'est une nouvelle mode sur CS ?? Pour la nième fois, il est interdit de mettre des executables
5 juin 2006 à 21:50
ce sujet a été déja Déposé et ta source ne prend pas l'aprés Virgule et dans une Facture Les TTC ne sont Pas des enties juste Une remarque
Bon chance