Contenu | Rechercher | Menus

Annonce

Si vous rencontrez des soucis à rester connecté sur le forum (ou si vous avez perdu votre mot de passe) déconnectez-vous et reconnectez-vous depuis cette page, en cochant la case "Me connecter automatiquement lors de mes prochaines visites".
Test de l'ISO d'Ubuntu francophone : nous avons besoin de testeurs pour la version francophone d'Ubuntu 14.04. Liens et informations ici.

Attention, une faille de sécurité dans bash a récemment été rapportée, il est recommandé de mettre à jour son système (plus de détails)

#1 Le 29/01/2013, à 12:08

Latsuj

Incomprehension du Random

Bonjour,

Je suis tombé sur un code qui contient une ligne que je ne comprend malheuresement pas :

 nombre=$((RANDOM%25+6)) 

Si il n'y avait pas le "+6", j'aurais compris. on aurait juste appliqué un modulo pour récupérer un nombre compris entre 0 et 24. Mais avec le +6, le resultat est assez inattendu pour ma part, on obtient un nombre compris entre 6 et 30. Pourquoi ? A quoi le + fait-il référence ? Pourquoi entre 6 et 30 ?

Merci d'avance de vos réponses.
Latsuj

Hors ligne

#2 Le 29/01/2013, à 12:17

pingouinux

Re : Incomprehension du Random

Bonjour,
Le décalage de 6 permet d'obtenir un entier aléatoire situé dans l'intervalle [6,30], au lieu de [0,24].

Hors ligne

#3 Le 29/01/2013, à 13:14

Latsuj

Re : Incomprehension du Random

Bonjour,

Hum...Bizarre que le décalage soit fait apres, quand je pense aux chaines de caractère, c'est l'inverse ( ${chaine:decalage:longueur} ).
Ok, merci pour ta réponse.

Bonne journée.

Hors ligne

#4 Le 29/01/2013, à 13:33

pingouinux

Re : Incomprehension du Random

Ça n'a rien a voir. Ici, il s'agit d'une opération arithmétique.
$((RANDOM%25)) => reste de la division de $RANDOM par 25
On ajoute 6 au résultat.

Hors ligne

#5 Le 29/01/2013, à 13:34

Latsuj

Re : Incomprehension du Random

Bonjour,

Haaaaaa.....Ok. Je ne l'avais pas compris comme cela. Ok bah du coup ça prend tout son sens.

Merci.
Bonne journée.

Hors ligne

Haut de page ↑