Transformer des chiffres en nombre romain

Soyez le premier à donner votre avis sur cette source.

Vue 17 549 fois - Téléchargée 557 fois

Description

Comment transformer un Nombre en Chiffre Romain ?

Mettez Cette Fonction dans votre Module :

Source / Exemple :


Function NbEnRomain(Nb As Integer) As String
    Dim ChiffreRomain As String
    ChiffreRomain = String(Int(Nb / 1000), "M")
    Nb = Nb - (Int(Nb / 1000) * 1000)

    If Nb >= 900 Then
        ChiffreRomain = ChiffreRomain & "CM"
    ElseIf Nb >= 500 And Nb < 900 Then
        ChiffreRomain = ChiffreRomain & "D" & String(Int((Nb - 500) / 100), "C")
    ElseIf Nb >= 400 And Nb < 500 Then
        ChiffreRomain = ChiffreRomain & "CD"
    Else
        ChiffreRomain = ChiffreRomain & String(Int(Nb / 100), "C")
    End If

    Nb = Nb - (Int(Nb / 100) * 100)

    If Nb >= 90 Then
        ChiffreRomain = ChiffreRomain & "XC"
    ElseIf Nb >= 50 And Nb < 90 Then
        ChiffreRomain = ChiffreRomain & "L" & String(Int((Nb - 50) / 10), "X")
    ElseIf Nb >= 40 And Nb < 50 Then
        ChiffreRomain = ChiffreRomain & "XL"
    Else
        ChiffreRomain = ChiffreRomain & String(Int(Nb / 10), "X")
    End If

    Nb = Nb - (Int(Nb / 10) * 10)

    If Nb >= 9 Then
        ChiffreRomain = ChiffreRomain & "IX"
    ElseIf Nb >= 5 And Nb < 9 Then
        ChiffreRomain = ChiffreRomain & "V" & String(Int((Nb - 5) / 1), "I")
    ElseIf Nb >= 4 And Nb < 5 Then
        ChiffreRomain = ChiffreRomain & "IV"
    Else
        ChiffreRomain = ChiffreRomain & String(Int(Nb / 1), "I")
    End If

    NbEnRomain = ChiffreRomain
End Function

' Pour L'executer ex :

NbEnRomain(1225)

Codes Sources

A voir également

Ajouter un commentaire

Commentaires

Commenter la réponse de jesusonline

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.