Fácil C
Calculando média e resto
Enunciado
Escreva um programa que leia dois números inteiros e exiba a soma, a média inteira (divisão inteira) e o resto da divisão do primeiro pelo segundo.
Requisitos
- Ler dois inteiros do usuário.
- Calcular e imprimir a soma.
- Calcular e imprimir a média inteira (divisão inteira).
- Calcular e imprimir o resto da divisão.
Código inicial
#include <stdio.h>
int main(void) {
int a, b;
// Seu código aqui
return 0;
}
Saída esperada
Digite dois numeros: 10 3
Soma: 13
Media inteira: 3
Resto: 1
Ver dica
Use scanf para ler os números e os operadores +, / e % para calcular.
Mostrar solução
#include <stdio.h>
int main(void) {
int a, b;
printf("Digite dois numeros: ");
scanf("%d %d", &a, &b);
printf("Soma: %d\n", a + b);
printf("Media inteira: %d\n", a / b);
printf("Resto: %d\n", a % b);
return 0;
}
Passo a passo
- Declaramos duas variáveis inteiras
aebpara armazenar os números digitados. - Usamos
printfpara exibir a mensagem pedindo os números. scanf("%d %d", &a, &b)lê dois inteiros separados por espaço.- Calculamos e imprimimos a soma com
a + b. - Calculamos e imprimimos a divisão inteira com
a / b. - Calculamos e imprimimos o resto com
a % b.
Por que funciona
Os operadores aritméticos +, / e % realizam as operações básicas. A divisão entre inteiros descarta a parte fracionária, por isso é chamada de divisão inteira. O operador % retorna o resto dessa divisão.
Erros comuns
- Esquecer o
&noscanf:scanf("%d %d", a, b);causa comportamento indefinido e provavelmente falha de segmentação. - Usar
%fpara inteiros:printf("%f", a + b);exibe valor incorreto ou lixo. - Dividir por zero: se
bfor 0, o programa quebra. Em um programa real, verifique antes.
Outra forma de resolver
Poderia usar float para média real, mas o enunciado pede média inteira. Se quisesse média real, bastaria converter: (float)a / b.
Saída esperada
Digite dois numeros: 10 3
Soma: 13
Media inteira: 3
Resto: 1