Soyez le premier à donner votre avis sur cette source.
Snippet vu 7 061 fois - Téléchargée 35 fois
function ConvRomainToInt(str: string): integer; var i: integer; begin result:= 0; For i:= 1 to Length(str) do begin if str[i] = 'M' then result:= result + 1000 else if str[i] = 'C' then result:= result + 100 else if str[i] = 'L' then result:= result + 50 else if str[i] = 'X' then result:= result + 10 else if str[i] = 'V' then result:= result + 5 else if str[i] = 'I' then begin // On est sur l'avant dernière lettre alors if i = Length(str) - 1 then begin if str[i + 1] = 'X' then begin result:= result + 9; break; end else if str[i + 1] = 'V' then begin result:= result + 5; break; end else result:= result + 1; end else result:= result + 1; end; end; end;
20 oct. 2004 à 19:22
Quant à mes réponses, j'applique le proverbe suivant :
"Donne un poisson à un homme qui a faim, il mangera une fois.
Apprends-lui à pêcher, il ne mourra plus de faim."
En clair, je prefères mettre sur la piste d'une solution que de la donner.
Mais tu as raison, on s'éloigne du sujet...~:o)
JulioDelphi : la structure Case..of a besoin d'une valeur appartenant à un ensemble scalaire. Or, les codes ASCII appartiennent à l'intervalle de 0..255.
Mais tu as parfaitement raison pour les chaines. D'autres langages comme Basic ou PHP le permettent, mais pas le Pascal.
20 oct. 2004 à 09:49
HAAAAAAAAAAlélouiyaaaaaa
merci je dormirais moins bete ce soir :D
je connaissais pas :)
20 oct. 2004 à 07:15
ok ok, je suis hors sujet
18 oct. 2004 à 23:31
CQFD.
18 oct. 2004 à 22:58
(oui je sais on peut le faire qd meme mais fo ruser)
Vous n'êtes pas encore membre ?
inscrivez-vous, c'est gratuit et ça prend moins d'une minute !
Les membres obtiennent plus de réponses que les utilisateurs anonymes.
Le fait d'être membre vous permet d'avoir un suivi détaillé de vos demandes et codes sources.
Le fait d'être membre vous permet d'avoir des options supplémentaires.