Modulo in MATLAB
Dieses Tutorial demonstriert die Modulo-Operation in MATLAB.
Modulo-Operation in MATLAB
Modulo ist eine mathematische Operation, die verwendet wird, um den Rest zu finden, wenn eine Ganzzahl durch eine andere dividiert wird. Er wird durch %
dargestellt und meist mit mod
abgekürzt.
Zum Beispiel gibt es zwei ganze Zahlen, a und b:
a mod b = r
Dabei ist a
der Dividende, b
der Modul oder Teiler und r
der Rest.
Der Modulo wird als Teil der modularen Arithmetik und Kryptografie betrachtet, was die Operation wie wrap around
betrifft, wenn die Berechnung einen Modulwert erreicht. Modulare Arithmetik ist grundlegend in der Kryptografie, wo Modulo-Operationen mit einer umfangreichen Menge an Modulus verwendet werden.
In MATLAB gibt es eine Methode für Modulo, um den Rest nach der Division zu finden:
r = mod(a,b)
Wobei a
der Dividende, b
der Divisor und r
der Rest ist.
Die zur Durchführung der Modulo-Operation verwendete Funktion kann wie folgt dargestellt werden:
r = a - b.*floor(a./b)
Die Funktion mod()
mit mod(a,0)
folgt der Konvention und gibt a
zurück.
Lassen Sie uns Beispiele für Modulo in MATLAB ausprobieren.
Modulo-Operation mit Skalarwerten
r = mod(51,7)
Der Rest unter Verwendung der Modulo-Operation ist:
r =
2
Modulo-Operation mit Vektorwerten
a = 2:9;
b = 7;
r = mod(a,b)
Die Reste unter Verwendung der Modulo-Operation auf dem Vektor sind:
r =
2 3 4 5 6 0 1 2
Modulo-Operation mit positiven und negativen Werten
a = [-6 -3 5 6];
b = 7;
r = mod(a,b)
Die Reste unter Verwendung der Modulo-Operation für positive und negative Werte sind:
r =
1 4 5 6
Modulo-Operation mit negativem Divisor
a = [-6 -3 5 6];
b = -7;
r = mod(a,b)
Die Reste, die die Modulo-Operation auf dem negativen Divisor verwenden, sind:
r =
-6 -3 -2 -1
Modulo-Operation mit Fließkommawerten
theta = [0.0 3.5 5.9 6.2 9.0 4*pi];
b = 7*pi;
r = mod(theta,b)
Die Reste, die die Modulo-Operation auf Fließkommawerten verwenden, sind:
r =
0 3.5000 5.9000 6.2000 9.0000 12.5664
Sheeraz is a Doctorate fellow in Computer Science at Northwestern Polytechnical University, Xian, China. He has 7 years of Software Development experience in AI, Web, Database, and Desktop technologies. He writes tutorials in Java, PHP, Python, GoLang, R, etc., to help beginners learn the field of Computer Science.
LinkedIn Facebook