iLaZz Posté(e) le 13 février 2018 Posté(e) le 13 février 2018 Base binaire constituée de 0, 1 Base octale constituée de 0, 1, 2, 3, 4, 5, 6, 7 Base décimale constituée de 0, 1, 2, 3, 4, 5, 6, 7, 8, 9 Base hexadécimale constituée de 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, A, B, C, D, E, F A=10 ; B=11; C=12 ; D=13 ; E=14 ; F=15 Première fonction permettant de renvoyer le caractère équivalent à notre nombre: function returnChar(n: number) :: text: if {_n} is smaller or equal to 9: return "%{_n}%" stop set {_text} to "ABCDEF" set {_s} to 10 loop {_text} split by "": if {_s} is {_n}: return "%loop-value%" stop add 1 to {_s} Deuxième fonction permettant de récupérer la valeur de notre nombre dans la base désirée: function Convert(base: number, nombre: number) :: text: while {_nombre}/{_base} is not 0: if {_x} is not set: set {_x} to "%returnChar({_nombre} - floor({_nombre}/{_base})*{_base})%" else: set {_x} to "%returnChar({_nombre} - floor({_nombre}/{_base})*{_base})%%{_x}%" set {_nombre} to floor({_nombre}/{_base}) return {_x} Commande pour tester: command /nb <number> <number>: trigger: if arg 1 is 2 or 8 or 10 or 16: send "%Convert(arg 1, arg 2)%" to sender else: send "Base inexistante." to sender 3
Messages recommandés
Créer un compte ou se connecter pour commenter
Vous devez être membre afin de pouvoir déposer un commentaire
Créer un compte
Créez un compte sur notre communauté. C’est facile !
Créer un nouveau compteSe connecter
Vous avez déjà un compte ? Connectez-vous ici.
Connectez-vous maintenant