C programlamada tek ve çift fonksiyonlar

C.'de tek ve çift sayıları kolayca bulabilirsiniz.

C'deki modül operatörü

C'deki ('%' sembolü olarak temsil edilen) modül operatörü, bir tür bölme görevi görür. Ancak, iki sayıyı bölmek ve bölümü kullanıcıya döndürmek yerine, modül operatörü iki sayıyı böler ve geri kalanını bir tamsayı olarak döndürür. Bu örnekte, her biri aynı değeri döndüren iki modül işlemi gerçekleştirilir:

int x =% 11 4 // kalan 11/4 = 3 int ve =% 13 5 // kalan 13/5 = 3

Düz ve tek sayıları belirlemek için modülü kullanın

Modulo işlemi, iki sayı arasındaki bir bölünmenin kalanını belirlediğinden, modulo operatörünün tek ve çift sayıları bulmak için kullanılması mantıklı görünmektedir. Tanım olarak bir çift sayı, 2 tarafından bölünebilen herhangi bir sayıdır. Bu nedenle, bölümün 2 modülünü alırken sayı sıfırlanır. Daha basit bir şekilde, "n" sayısı "n% 2" olsa bile. sıfıra eşittir. Örneğin, bu kod bir tamsayı alan ve sayının eşit olup olmadığına göre bir tam sayı (0 veya 1) döndüren bir işlevi tanımlar.

int isEven (int x) {dönüş (x% 2); }

Çift ve tek sayıların üretilmesi fonksiyonu

Modül işlemini kullanarak, tek veya çift sayı üreten bir işlev oluşturmak için basit görünüyor. Bir programcı, tek ve çift sayıların bir listesini oluşturmayı yararlı bulabilir. Bu durumda, basit bir for döngüsü ve kullanıcı tarafından girilen bir alan boyutu, bir sayı dizisi oluşturmak için ihtiyacınız olan tek şeydir:

void evenGenerate (int boyut) {int i = 0;

(i; i <= boyut; i ++) {if (i% 2 == 0) cout << i << endl; }}

Bu çift sayıları üretir. Programcı, "if" ifadesini "eğer (i% 2 == 1)" tek sayıları üretecek şekilde değiştirecek şekilde değiştirebilir.

Modül Alternatifleri

Modül, basit bir işlem değildir, ancak birinde üç matematiksel hesaplama içerir. Bunun nedeni "x% y" işleminin aslında "x - y * (x / y)" değerine eşit olmasıdır. Bunu bilerek, bir programcı işlemi bölüştürebilir veya süreyi optimize etmek için operasyonun parçalarını diğer işlemlerle birleştirmenin yollarını bulabilir. Ancak kullanım ve modül operatör kodlama genel kolaylığı iyi çalışır. Aşağıdaki, C'deki iki yöntemin bir örneği olarak işlev görür:

int x =% 10 2; // 10/2 = 5 bakiye olmadan int y = 10 - (2 x (10/2)); // Operasyon sırasına göre 10/2 = 5; 5 x 2 = 10; 10 - 10 = 0 dinlenme