Modèle:Rotation

Un article de Wikipédia, l'encyclopédie libre.

informations sur ce modèle

La documentation de ce modèle est incluse depuis sa sous-page de documentation [modifier] [historique]. Voir la liste des modèles.

Cliquez ici pour purger le cache lorsque vos modifications n’apparaissent pas.

Utilisation
Ce modèle renvoie l’image d’un nombre A par la fonction qui associe l’image 1 à la valeur B et qui appartient aux permutations circulaires d’ordre C (c’est-à-dire que la fonction réduite à l’intervalle [1,C] est bijective et retourne une valeur dans le même intervalle par rotation). Autrement dit, pour tous entiers B et C, et pour tout entier A dans [1,C], la permutation vérifie :
Permutation(B, B, C) = 1 (début de cycle) ;
Si B > 1, Permutation(B-1, B, C) = C (fin de cycle) ;
Permutation(A, 1, C) = A (permutation identité).
La permutation d’ordre C ainsi définie sur un intervalle discret est strictement équivalente à une opération plus générale admettant une valeur quelconque pour A.
Aussi, ce modèle utilise une opération modulaire pour permettre à A des valeurs d’entrée hors de l’intervalle [1,C], de sorte qu’on a toujours :
Rotation(A + n.C, B, C) = Rotation(A, B, C), pour tout n entier positif ou négatif.
Rotation(A, B, C) = Permutation(A, B, C) seulement pour A dans [1,C]
Par conséquent :
Rotation(A, B, C) = ((A - B) mod C) + 1.
Ce modèle permet aussi à A de ne pas être entier (le modulo utilisé calcule le reste réel après une division entière par C). Cette définition plus générale que la permutation permet donc d'effectuer des calculs sur un nombre arbitraire de cycles (par exemple des cycles calendaires).
Syntaxe
{{Rotation|1=nombre A|2=nombre B|3=nombre C}}
Exemples d’applications sur des valeurs d'entrées testant les bornes du cycle de sortie
  • {{Rotation|201|201|365}} renvoie 1 (doit retourner 1 = début de cycle)
  • {{Rotation|200|201|365}} renvoie 365 (doit retourner 365 = fin de cycle)
Exemples d’applications sur des valeurs d'entrées décalées avant le cycle de base
  • {{Rotation|-28|3|10}} renvoie 10 (doit renvoyer 10 = fin de cycle)
  • {{Rotation|-18|3|10}} renvoie 10 (doit renvoyer aussi 10 = fin de cycle)
  • {{Rotation|-8|3|10}} renvoie 10 (doit renvoyer aussi 10 = fin de cycle)
  • {{Rotation|-7|3|10}} renvoie 1 (doit renvoyer 1 = début de cycle)
  • {{Rotation|-2|3|10}} renvoie 6 (doit renvoyer 6)
  • {{Rotation|-1|3|10}} renvoie 7 (doit renvoyer 7)
  • {{Rotation|0|3|10}} renvoie 8 (doit renvoyer 8)
Exemples d’applications sur les valeurs d'entrées dans le cycle de base (résulats identiques à ceux du modèle Permutation)
  • {{Rotation|1|3|10}} renvoie 9 (doit renvoyer 9)
  • {{Rotation|2|3|10}} renvoie 10 (doit renvoyer 10 = fin de cycle)
  • {{Rotation|3|3|10}} renvoie 1 (doit renvoyer 1 = début de cycle)
  • {{Rotation|4|3|10}} renvoie 2 (doit renvoyer 2)
  • {{Rotation|7|3|10}} renvoie 5 (doit renvoyer 5)
  • {{Rotation|9|3|10}} renvoie 7 (doit renvoyer 7)
  • {{Rotation|10|3|10}} renvoie 8 (doit renvoyer 8)
Exemples d’applications sur des valeurs d'entrées décalées après le cycle de base
  • {{Rotation|11|3|10}} renvoie 9 (doit renvoyer 9)
  • {{Rotation|12|3|10}} renvoie 10 (doit renvoyer 10 = fin de cycle)
  • {{Rotation|13|3|10}} renvoie 1 (doit renvoyer 1 = début de cycle)
  • {{Rotation|23|3|10}} renvoie 1 (doit renvoyer aussi 1 = début de cycle)
  • {{Rotation|33|3|10}} renvoie 1 (doit renvoyer aussi 1 = début de cycle)


Commentaire Ce modèle emploie quelques fonctionnalités complexes de la syntaxe des ParserFunctions.

Veuillez ne pas tenter de le modifier à moins que vous ne soyez certain de bien comprendre sa conception et êtes préparé à réparer tous les dommages collatéraux si les résultats sont inattendus. Toute expérimentation devrait être conduite d’abord via une copie sur le Modèle bac à sable ou dans votre espace utilisateur.

Cliquez ici pour purger le cache lorsque vos modifications n’apparaissent pas.