Korzystanie z operatora modułu (%) w Bash
- 1002
- 272
- Maria Piwowarczyk
W programowaniu moduł lub pozostała część jest operacją, która zwraca pozostałą część podziału. W Bash operator modułu jest reprezentowany przez % symbolu. Operator modułu jest powszechnie używany w programowaniu do sprawdzenia, czy liczba jest podzielna według innej liczby lub do wykonywania operacji wymagających cyklicznego wzoru. W tym artykule zbadamy, jak korzystać z operatora modułu w Bash.
Składnia:
Składnia operatora modułu w Bash jest następująca:
Expr Num1 % NUM21 | Expr Num1 % NUM2 |
Gdzie Num1 I Num2 Czy dwie liczby są obsługiwane. Symbol % reprezentuje operatora modułu.
Przykład 1: Sprawdzanie, czy liczba jest równa czy dziwna
Operatora modułu można użyć do ustalenia, czy liczba jest równa czy dziwna. Liczba parzystej to ta, która jest podzielna przez 2, podczas gdy liczba nieparzysty nie jest. Następujące kody sprawdza, czy liczba jest równa lub dziwna:
num = 10 Jeśli [$ (expr $ num % 2) -eq 0], a następnie echo „$ num to nawet„ else echo ”$ num” fi #output: 10 jest parzyste123456789 | num = 10if [$ (expr $ num % 2) -eq 0], a następnie echo „$ num to nawet„ else echo ”$ num” fi #output: 10 jest parzyste |
Przykład 2: Generowanie cyklicznego wzoru
Operator modułu można również użyć do generowania cyklicznego wzoru. Na przykład, jeśli chcesz wydrukować liczby od 1 do 10 wielokrotnie w cyklicznym wzorze, możesz użyć następującego kodu:
Dla I in 1… 20; do echo $ ((i % 10 + 1)) gotowe #output: 1 2 3 4 5 6 7 8 9 10 1 2 3 4 5 6 7 8 9 1012345 | Dla I in 1… 20; do echo $ ((i % 10 + 1)) gotowe #output: 1 2 3 4 5 6 7 8 9 10 1 2 3 4 5 6 7 8 9 10 |
Przykład 3: Sprawdzanie roku skokowego
Operator modułu można użyć do sprawdzenia, czy rok to rok skokowy. Rok kroku to rok, który można podzielić przez 4, z wyjątkiem lat, które są podzielne przez 100, ale nie przez 400. Następujący kod kontroluje, jeśli rok jest rokiem skoku:
Rok = 2024 Jeśli [$ (Expr $ % 4) -EQ 0 -A $ (Expr $ rok % 100) -NE 0 -O $ (Expr $ % 400) -EQ 0], a następnie echo „$ rok to a Rok LEAP „Else Echo” $ Year to nie rok skokowy ”FI #output: 2024 to rok skokowy123456789 | rok = 2024if [$ (Expr $ % 4) -EQ 0 -A $ (Expr $ rok % 100) -NE 0 -O $ (Expr $ % 400) -EQ 0], a następnie echo „$ rok to skok Rok „Else Echo” $ Year nie jest rokiem skokowym ”FI #output: 2024 to rok skokowy |
Przykład 4: Obliczanie pozostałej części
Do obliczenia pozostałej części podziału można użyć operatora modułu. Poniższy kod oblicza pozostałą część podziału 10 przez 3:
Echo $ (expr 10 % 3) #output: 1123 | Echo $ (expr 10 % 3) #output: 1 |
Przykład 5: Sprawdzanie podziału
Operator modułu można użyć do sprawdzenia, czy liczba jest podzielna według innej liczby. Poniższy kod sprawdza, czy 10 jest podzielne przez 5:
Jeśli [$ (expr 10 % 5) -eq 0], to echo „10 jest podzielne przez 5„ else echo ”10 nie jest podzielne przez 5" fi #output: 10 jest podzielne przez 512345678 | Jeśli [$ (expr 10 % 5) -eq 0], to echo „10 jest podzielne przez 5„ else echo ”10 nie jest podzielne przez 5" fi #output: 10 jest podzielne przez 5 |
Wniosek
W tym artykule zbadaliśmy, jak korzystać z operatora modułu w Bash. Widzieliśmy, w jaki sposób operator modułu można użyć do ustalenia, czy liczba jest równa, czy dziwna, wygeneruj cykliczny wzór, sprawdź rok skokowy, oblicz pozostałą część i sprawdź podzielność. Operator modułu jest potężnym narzędziem w programowaniu, którego można używać na wiele różnych sposobów. Zrozumienie, jak korzystać z operatora modułu w BASH, jest niezbędne do pisania wydajnych i skutecznych skryptów Bash.
- « 20 typowych pytań i odpowiedzi na rozmowę kwalifikacyjną JavaScript
- Jak obliczyć resztę (%) podziału w BASH »