Resto de uma divisão inteira em linguagem C

Por: Eduardo Casavella
A divisão inteira

Quando realizamos uma divisão de duas variáveis inteiras, a parte fracionária é eliminada de forma automática, ou então é “truncada”.

Como a parte fracionária é descartada, temos que o resultado de uma divisão inteira é sempre um número inteiro.

Por exemplo:

7 / 2 tem como resultado 3 e não 3,5 que é um número real

2 / 3 é zero e não 0,66.

Vejamos um exemplo prático

Programa para fazer divisão de inteiros em C

#include <stdio.h>
#include <conio.h>

int main(void)
{
	int n1,n2,resto,res;
	
	printf ("\nDigite um numero:");
	scanf ("%d", &n1);
	
	printf ("\nDigite um numero:");
	scanf ("%d", &n2);
	
	res = n1 / n2;
	
	printf("\nResultado da divisao de %d / %d = %d. \n",n1,n2,res);
	
	getch();
	return(0);
}

Tela de Execução com os valores do Exemplo

tela de execução divisão

Tela de execução divisão de inteiros

tela de execução divisão 2

Tela de execução divisão de inteiros

O resto da divisão inteira

O operador % retorna o resto da divisão de um número por outro.

5 % 2 = 1
4 % 2 = 0

Em alguns casos, este operador é bastante útil.

Por exemplo, em algumas aplicações é necessário extrair dígitos de um valor inteiro.

Uma forma de fazer isso é dividir o valor inteiro por 10 e armazenar o resto em uma variável.

Assim podemos guardar o último dígito em do número em uma variável.

Outro caso interessante que pode ser resolvido com o resto da divisão é verificar se um valor é par ou ímpar.

Sabemos que o número é par se for divisível por 2 e o resto for zero.

Exercício: Faça um programa em linguagem C para verificar se um valor é par ou impar.

//Exemplo de programa em C
//Par ou impar.
#include <stdio.h>
#include <conio.h>
int main(void)
{
	int n1,resto;
	
	printf ("\nDigite um numero:");
	scanf ("%d", &n1);
	
	resto = n1 % 2;
	printf ("O resto da divisao e %d",resto);
	
	if (resto == 0)
		printf("\nO numero %d e par. \n",n1);
	else
		printf("\nO numero %d e impar. \n",n1);
	
	getch();
	return(0);
}

Tela de execução com um valor Par e um valor Impar

tela de execução valor par

Tela de execução valor Par

tela de execução valor impar

Tela de execução valor Impar

Até a próxima!

6 respostas a Resto de uma divisão inteira em linguagem C