Modül Operatörü
Coddy'nin C++ Journey'sinin Temeller bölümünün bir parçası. Ders 17 / 74.
Mod alma işleci %, bir bölme işleminin kalanını verir. C++ dilinde basit bir söz dizimiyle kullanılır:
result = dividend % divisor;- dividend: Bölünen sayı.
- divisor: Böleni bölen sayı.
- result: Bölme işleminden kalan.
Örneğin:
result = 10 % 3;Burada 10, 3'e bölünür. 3, 10'un içinde üç kez bulunur ve 1 kalan verir. Dolayısıyla result 1 olur.
Genellikle mod alma, bir sayının çift mi yoksa tek mi olduğunu kontrol etmek için kullanılır:
- Bir sayı çiftse, 2’ye bölündüğünde kalan 0 olur.
- Bir sayı tekse, 2’ye bölündüğünde kalan 1 olur; sayı negatif olduğunda ise kalan -1 olur.
C++ dilinde kayan noktalı sayılarla (double) çalışırken modulo operatörünü % doğrudan kullanamazsın. Bunun yerine, <cmath> kitaplığındaki fmod() işlevini kullanman gerekir. Bu işlev modulo operatörüne benzer şekilde çalışır, ancak ondalık hassasiyeti korur. Örneğin:
#include <cmath>
double result = fmod(5.2, 2.0);
// result 1.2'dirİşte nasıl çalıştığı: 2.0, 5.2'nin içinde iki kez bulunur (4.0) ve kalan 1.2'dir (5.2 - 4.0 = 1.2).
Başka bir örnek:
double result = fmod(7.8, 3.5);
// result 0.8'dirBölen, bölünenden büyük olduğunda sonuç bölünene eşit olur. Bu, hem % hem de fmod() için geçerlidir.
5 % 10 = 5
3 % 7 = 3
fmod(2.5, 8.0) = 2.5Neden? Bölen sıfır kez sığar, bu nedenle bölünenin tamamı kalandır.
Görev
Başlangıça (int), b (double) ve c (int) adlı üç değişkeni sırasıyla 9, 2.6 ve 11 değerleriyle başlatan bir kod yaz.
Bundan sonra aşağıdaki değişkenleri başlat:
d (int),adeğerinin2ile bölümünden kalanı tutacake (int),adeğerinin3ile bölümünden kalanı tutacakf (double),bdeğerinin1.5ile bölümünden kalanı tutacakg (double),bdeğerinin3.9ile bölümünden kalanı tutacakh (int),cdeğerinin10ile bölümünden kalanı tutacak
Sonucu incele ve farklı bölünenlerin ve bölenlerin sonucu nasıl etkilediğini gör.
Kendin dene
#include <iostream>
#include <cmath>
int main() {
// Kodunuzu aşağıya yazın
// Aşağıdaki satırı değiştirmeyin
std::cout << "a = " << a << std::endl;
std::cout << "b = " << b << std::endl;
std::cout << "c = " << c << std::endl;
std::cout << "d = " << d << std::endl;
std::cout << "e = " << e << std::endl;
std::cout << "f = " << f << std::endl;
std::cout << "g = " << g << std::endl;
std::cout << "h = " << h << std::endl;
return 0;
}Bu ders kısa bir quiz içerir. Soruları yanıtlamak ve ilerlemeni kaydetmek için derse başla.
Temeller bölümündeki tüm dersler
4Operatörler Bölüm 1
Aritmetik OperatörlerModül OperatörüArtırma/AzaltmaSonradan Artırma/AzaltmaAritmetik KısayollarKarşılaştırma OperatörleriString Karşılaştırma7Giriş/Çıkış Temelleri
cout İfadesicin İfadesiString GirdisiÖzet - 120'ye KadarÖzet - Doğru veya YanlışKendi başına pratik yap: Online C++ derleyicisi