Petit concours pour l'été...

Le
Jean-marc
Hello à tous,

Petit concours pour l'été

Sauriez vous deviner, SANS la compiler/exécuter, ce que
fait cette petite fonction fraichement écrite par mes
soins:

Private Function a2r(ByVal v As String) As String
Dim i As Integer
Const t As String = "FU@JSIA"
Const p As Integer = 3

For i = Len(v) - 1 To 0 Step -1
If Val(Mid$(v, Len(v) - i, 1)) <= p Then
a2r = a2r & String$(Val(Mid$(v, Len(v) - i, 1)), _
Chr$(Asc(Mid$(t, i + 1, 1)) + p))
ElseIf Val(Mid$(v, Len(v) - i, 1)) < (2 * p) Then
a2r = a2r & String$(5 - Val(Mid$(v, Len(v) - i, 1)), _
Chr$(Asc(Mid$(t, i + 1, 1)) + p)) & _
Chr$(Asc(Mid$(t, i + 1 + 4, 1)) + p)
ElseIf Val(Mid$(v, Len(v) - i, 1)) < (3 * p) Then
a2r = a2r & Chr$(Asc(Mid$(t, i + 1 + 4, 1)) + p) & _
String$(Val(Mid$(v, Len(v) - i, 1)) - 5, _
Chr$(Asc(Mid$(t, i + 1, 1)) + p))
Else
a2r = a2r & Chr$(Asc(Mid$(t, i + 1, 1)) + p) & _
Chr$(Asc(Mid$(t, i + 2, 1)) + p)
End If
Next i
End Function


Pas de prix à gagner, à part ma considération éternelle :--))

Si le/les gagnant(s) sont sur BXL, j'offre un verre :-)

Amusez vous bien :-)

--
Jean-marc Noury (jean_marc_n2)
Microsoft MVP - Visual Basic
FAQ VB: http://faq.vb.free.fr/
mailto: remove '_no_spam_' ; _no_spam_jean_marc_n2@yahoo.fr




--
Jean-marc Noury (jean_marc_n2)
Microsoft MVP - Visual Basic
FAQ VB: http://faq.vb.free.fr/
mailto: remove '_no_spam_' ; _no_spam_jean_marc_n2@yahoo.fr
Questions / Réponses high-tech
Vidéos High-Tech et Jeu Vidéo
Téléchargements
Vos réponses
Gagnez chaque mois un abonnement Premium avec GNT : Inscrivez-vous !
Trier par : date / pertinence
Jean-marc
Le #16349121
Jean-marc wrote:
Hello à tous,

Petit concours pour l'été...

Sauriez vous deviner, SANS la compiler/exécuter, ce que
fait cette petite fonction fraichement écrite par mes
soins ...



Allez, c'est peut être un peu compliqué comme ça. Vous
pouvez aussi essayer de deviner en l'exécutant et en faisant
des tests.

Indices:
- C'est une fonction de conversion
- Elle a une vrai utilité


Bonne journée !

--
Jean-marc Noury (jean_marc_n2)
Microsoft MVP - Visual Basic
FAQ VB: http://faq.vb.free.fr/
mailto: remove '_no_spam_' ;
Fred
Le #16349371
Dans : news:487f0608$0$2855$,
Jean-marc écrivait :
Jean-marc wrote:
Hello à tous,

Petit concours pour l'été...

Sauriez vous deviner, SANS la compiler/exécuter, ce que
fait cette petite fonction fraichement écrite par mes
soins ...



Allez, c'est peut être un peu compliqué comme ça. Vous
pouvez aussi essayer de deviner en l'exécutant et en faisant
des tests.

Indices:
- C'est une fonction de conversion
- Elle a une vrai utilité


Bonne journée !



Allez, à vue de nez, et en ajoutant 3 aux codes des caractères de
je dirais que cela fait une conversion en chiffres romains ? ;-)


--
Fred

Vincent Guichard
Le #16349551
Jean-marc a écrit :
Hello à tous,

Petit concours pour l'été...



Je réponds en MP pour ne pas gâcher le plaisir aux autres participant s ;D

Vincent Guichard
Jean-marc
Le #16349541
Fred wrote:
Dans : news:487f0608$0$2855$,



Allez, à vue de nez, et en ajoutant 3 aux codes des caractères de
je dirais que cela fait une conversion en chiffres romains ?
;-)



B R A V O ! !

Nous avons un gagnant :-)

C'est en effet le but de cette fonction :
Elle prend en entrée une chaine de caractère entre
"0" et "3999" et effectue la conversion en chiffres
romains.

Par exemple :

? a2r("1969")
MCMLXIX

Bravo à toi. Si tu passes en Belgique, tu peux venir retirer
ton prix :-))

Des volontaires pour présenter d'autres "jeux de l'été" ?

Bonne journée !

--
Jean-marc Noury (jean_marc_n2)
Microsoft MVP - Visual Basic
FAQ VB: http://faq.vb.free.fr/
mailto: remove '_no_spam_' ;
Jean-marc
Le #16349661
Vincent Guichard wrote:
Jean-marc a écrit :
Hello à tous,

Petit concours pour l'été...



Je réponds en MP pour ne pas gâcher le plaisir aux autres
participants ;D
Vincent Guichard



Hello,

Réponse envoyée en MP :-)

Nous avons donc un second gagnant, avec une excellente analyse !

--
Jean-marc Noury (jean_marc_n2)
Microsoft MVP - Visual Basic
FAQ VB: http://faq.vb.free.fr/
mailto: remove '_no_spam_' ;
Publicité
Poster une réponse
Anonyme