- Aide de Scilab
- Fonctions Elémentaires
- Opérations binaires
- Nombres complexes
- Arithmétique
- Matrice - génération
- Exponentielle
- Virgule flottante
- Bases de numération
- Matrice - façonnage
- Opérations matricielles
- Chercher et trier
- Ensembles
- Traitement du signal
- Trigonométrie
- &, &&
- ind2sub
- iscolumn
- isempty
- isequal
- ismatrix
- isrow
- isscalar
- issquare
- isvector
- modulo
- ndims
- |, ||
- size
- sub2ind
Please note that the recommended version of Scilab is 2025.0.0. This page might be outdated.
See the recommended documentation of this function
modulo
reste symétrique modulo m ayant le signe du dividende
pmodulo
reste modulo m euclidien positif
Séquence d'appel
i = modulo(n,m)
i = pmodulo(n,m)
Paramètres
- m, n
Scalaire, vecteur, matrice ou hypermatrice d'entiers encodés, de décimaux réels ou de polynômes (les hypermatrices de polynômes ne sont pas admises).
m
etn
doivent être de même type. S'ils sont de types entiers, il peuvent être d'encodages distincts (par exemple int8 et int16) Si aucune des deux n'est scalaire, elles doivent avoir les mêmes dimensions.- i
Scalaire, vecteur, matrice ou hypermatrice du type de
n
(voire de même inttype).i
a les dimensions de la plus large dem
oun
.
Description
modulo
calcule i= n (modulo m)
c'est à dire le reste de n
divisé par
m
.
i = n - m .* int (n ./ m). Ici la réponse peut être négative si
n
et/ou m
sont négatifs.
pmodulo
calcule i = n - |m| .* floor (n ./|m|)
,la réponse est positive ou nulle.
Si m contient au moins une valeur nulle, modulo(x,m) et pmodulo(x,m) effectueront une division par zéro. Si m est de type réel, l'exception sera traitée selon le mode ieee() actif. Si m est de type entier, une erreur sera toujours émise. |
Exemples
n = [1,2,10,15]; m = [2,2,3,5]; modulo(n,m) modulo(-3, 9) modulo(10, -4) pmodulo(-3, 9) pmodulo(10, -6) pmodulo(-10, -6) // Entiers encodés modulo( int8(-13), int16(-7)) pmodulo(int8(-13), int16(-7)) modulo( int8(-13), int16([-7 5])) pmodulo(int8(-13), int16([-7 5])) modulo( int8([-13 8]), int16(-7)) pmodulo(int8([-13 8]), int16(-7)) modulo( int8([-13 8]), int16([-7 5])) pmodulo(int8([-13 8]), int16([-7 5])) // Hypermatrices m = grand(2,2,2,"uin",-100,100) n = grand(2,2,2,"uin",-10 ,10); n(n==0) = 1 modulo(m, 5) pmodulo(m,5) modulo(51, n) pmodulo(51,n) modulo(m, n) pmodulo(m,n) // Polynômes modulo( %z^2+1, %z) pmodulo(%z^2+1, %z)
Voir aussi
Historique
Version | Description |
5.5.0 | Extension aux entiers encodés et aux hypermatrices d'entiers ou de réels. |
Report an issue | ||
<< isvector | Fonctions Elémentaires | ndims >> |