/*
Faça um programa em Linguacem C que leia 3 valores e:
a)Se os três forem pares, imprima a media dos três.
b)Se os três forem impares, imprima o produto dos três.
*/
#include < stdio.h >
#include < stdlib.h >
int main( )
{ /*
Na linha abaixo declaramos um vetor de 3 posições para guardar os três
valores digitados, uma variavel para guardar o resto de uma divisão e
outra para usarmos como um contador.
*/
int numero[3],resto,x;
/*
Agora declaramos três variaveis onde contaremos quantos numeros são pares e
impares e tambem uma variavel para o produto dos três numeros.
*/
int par=0, impar=0,soma=0,produto=1;
// Na proxima linha declaramos uma variavel para guardar a media.
double media;
// Agora temos uma mensagem para o usuario
printf("Digite os valores\n");
/*
Abaixo temos um contador com a missão de receber os valores do vetor, calcular
o resto da divisão de um numero por 2 e descobrir se um numero é par ou impar,
somar os valores digitados e guardar na variavel soma, calcular o produto dos
numeros digitados e guardar na variavel produto.
* Detalhes http://logicaelinguagem.blogspot.com/2009/07/for.html
* http://logicaelinguagem.blogspot.com/2009/07/descobrir-se-um-numero-e-par-ou-impar.html
*/
for(x=0;x<3;x++)
{
scanf("%d",&numero[x]);
resto = numero[x]%2; // calcula o resto de uma divisão
soma = soma + numero[x];
produto = produto * numero[x]; // calcula produto
if(resto == 0)
{
par = par + 1;
}
else
{
impar = impar +1;
}
}
if ( par == 3)
{
media = soma/3; //Calculo da media.
printf("A media dos valores digitados e %.2f ",media);
printf("\n");
}
/* Na linha acima vamos imprimir uma mensagem e o valor da media, no operador %f
foi colocado entre o % e o f um ponto e o numero 2, isso formata o valor da media
para duas casas decimais.
*/
if (impar == 3)
{
// Abaixo vamos imprimir o valor da variavel produto.
printf("O produto dos numeros digitados e %d",produto);
printf("\n");
}
if ((par!=3)&& (impar!=3))
{ printf(" \nOs numeros digitados estao misturados em pares e impares \n"); }
/*
Esse ultimo bloco tem uma estrutura de condição composta, teste se par for diferente
de 3 e impar for diferente 3 o programa imprime a mensagem:
Os numeros digitados estao
*/
system("PAUSE");
return 0;
}