Funções pares e ímpares na programação C

A linguagem de programação C é projetada como uma linguagem de design de sistema que pode ser lida por humanos para programadores trabalharem no desenvolvimento de software. A sintaxe e as operações C (como expressões matemáticas e estruturas de loop) são mais intuitivas para um programador de computador ao trabalhar com software complexo. Operações matemáticas simples, como a operação do módulo (ou o restante), exigem um símbolo único e permitem que os programadores desenvolvam funções que calculam números ímpares e pares.

O operador do módulo C

O operador do módulo C (representado como o símbolo ‘%’) atua como um tipo de divisão. Mas, em vez de dividir dois números e retornar o quociente ao usuário, o operador do módulo divide dois números e retorna o restante como um número inteiro. Neste exemplo, ocorrem duas operações do módulo, cada uma retornando um valor idêntico:

int x = 11% 4 // resto de 11/4 = 3 int y = 13% 5 // resto de 13/5 = 3

Use o módulo para determinar números pares e ímpares

Como a operação do módulo determina o restante de uma divisão entre dois números, parece lógico que o operador do módulo seja usado para descobrir números pares e ímpares. Um número par, por definição, é qualquer número divisível por 2. Portanto, o número retorna um zero ao obter o módulo de divisão por 2. Mais simplesmente, um número “n” é par se “n% 2” É igual a zero. Por exemplo, esse código define uma função que pega um número inteiro e retorna um número inteiro (0 ou 1), dependendo se o número é par ou não.

int isEven (int x) {return (x% 2); }

Uma função de gerar números ímpares e pares

Usando a operação do módulo, parece simples criar uma função que gera números ímpares ou pares. Um programador pode achar útil gerar uma lista de números pares e ímpares. Nesse caso, basta um loop for e um tamanho de campo digitados pelo usuário para criar uma coleção de números:

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

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

Isso gera números pares. O programador pode alterar a instrução “if” para dizer “if (i% 2 == 1)” para gerar números ímpares.

Alternativas ao módulo

O módulo em si não é uma operação simples, mas contém três cálculos matemáticos em um. Isso ocorre porque a operação “x% y” é realmente igual a “x – y * (x / y)”. Sabendo disso, um programador pode dividir a operação ou encontrar maneiras de incorporar as partes da operação com outras operações para otimizar o tempo. Mas, para uso geral e facilidade na codificação, o operador do módulo funciona bem. A seguir, serve como um exemplo de dois métodos juntos em C:

int x = 10% 2; // 10/2 = 5 sem resto int y = 10 – (2 * (10/2)); // Em ordem de operação, 10/2 = 5; 5 * 2 = 10; 10 – 10 = 0 restante

Referências

 

Você pode estar interessado:

Deixe um comentário