Innholdsfortegnelse
Hva er Modulo -operatøren?
Modulo -operatøren er en matematisk operasjon som utfører deling av to verdier og gir oss til gjengjeld deres resten. La oss si at vi har en verdi på 9 og den andre er 2 når vi deler begge resten vil være 1. For å få resten av tallet i Arduino brukes prosentvis tegnet (%) som er et symbol for modulo -operatøren.
Denne Modulo -operatøren brukes ofte i Arduino -programmering for å opprettholde en variabel innenfor et bestemt område, for eksempel størrelsen på en matrise.
Syntaks
Syntaksen for resten av operasjonen er som følger:
Rest = Dividend % Divisor;
Parameter
Modulo -operatøren tar følgende parametere:
Komme tilbake
Denne funksjonen returnerer resten av to tall når den er delt.
Hvordan bruke modulo -operatøren i Arduino
For å bruke Modulo -operatøren i Arduino, bruker du ganske enkelt prosentvis tegnet mellom to tall. Her er et eksempel:
int resten = 10 % 3; // resten tilsvarer 1
I dette eksemplet bruker vi Modulo -operatøren for å finne resten av 10 delt med 3. Resultatet er 1, som er lagret i variabelen resten.
Eksempelprogram ved hjelp av modulo -operatøren i Arduino
La oss se på et komplett program som bruker Modulo -operatøren for å finne resten av to tall:
int num1 = 10;
int num2 = 3;
int resten = num1 % num2;
void setup ()
Serie.Begynn (9600);
void loop ()
Serie.trykk ("resten av");
Serie.trykk (num1);
Serie.print ("og");
Serie.trykk (num2);
Serie.print ("er:");
Serie.println (resten);
forsinkelse (10000);
Koden begynner med å definere variabler, num1 og num2. Verdien deres er satt til henholdsvis 10 og 3. Vi bruker deretter modulo -operatøren som vil sende resten etter å ha delt begge disse tallene. Resten av verdien vil bli lagret i et variabelt navn rest. Endelig bruker vi serien.println () -funksjon for å skrive ut verdien til resten til seriemonitoren.
Hvordan bruke modulo -operatøren for å sjekke for jevn eller oddetall i Arduino
Modulo -operatøren er også nyttig for å sjekke om et nummer er til og med eller merkelig. Når vi deler et visst tall med 2, og hvis resten er null, betyr det at inngangsverdien er til og med nummer, mens hvis vi får en viss verdi av resten, viser det at tallet er merkelig. Her er et eksempel:
void setup ()
Serie.Begynn (9600);
samtidig som (!Seriell); // Vent til seriemonitoren åpner
Serie.println ("Skriv inn et tall:");
void loop ()
hvis (seriell.tilgjengelig())
int num = seriell.parseInt ();
if (num % 2 == 0)
Serie.print (num);
Serie.println ("er jevn");
annet
Serie.print (num);
Serie.println ("er rart");
// Vent til neste inngang
Serie.println ("Skriv inn et annet nummer:");
Koden startet med å sjekke brukerinndata. Den går deretter inn i Loop () -funksjonen, som sjekker om brukeren har lagt inn et nummer ved å ringe Serie.tilgjengelig() funksjon. Hvis det er nye data tilgjengelig, bruker koden Serie.parseint () Funksjon for å lese brukerens innspill som et heltall.
Koden bruker deretter IF -setningen for å sjekke om brukerinngangen er jevn eller merkelig. Den bruker Serie.skrive ut() Funksjon for å skrive ut resultatet til seriemonitoren.
Til slutt skriver koden ut en melding som ber brukeren om å oppgi et annet nummer, og prosessen gjentar.
Begrensninger i modulooperatøren
Mens Modulo -operatøren er et nyttig verktøy for å finne resten av to tall, har den sine begrensninger. Modulo -operatøren kan bare brukes med heltallverdier. Hvis du prøver å bruke modulooperatøren med flytende punkt tall, du vil møte en feil.
Konklusjon
I Arduino -programmering finner Modulo -operatøren resten av to tall. Det er representert av Prosent tegn (%) og kan brukes med heltallverdier. Modulo -operatøren kan også se etter et visst inngangsnummer hvis det inngangsnummeret er jevnt eller rart. Det kan imidlertid ikke brukes med flytende punkttall. For detaljer om Modulo -operatører i Arduino, les artikkelen.