Escreva um programa em C para criar um vetor de inteiros de tamanho 10 e preencher com valores digitados pelo usuário. Em seguida, o programa deve verificar a média dos números pares e a média dos números ímpares armazenados no vetor.
Soluções para a tarefa
#include <stdio.h>
int main(){
int a[10], contPar, contImpar;
contPar = contImpar = 0;
float mediaPar, mediaImpar;
mediaPar = mediaImpar = 0;
for (int i=0;i<10;i++){
printf("{%d}::> ",i+1); scanf("%d",&a[i]);
if(a[i]%2==0) {
mediaPar+=a[i];
contPar++;
}
else {
mediaImpar+=a[i];
contImpar++;
}
}
mediaPar/=contPar;
mediaImpar/=contImpar;
printf("Media Par: %.2f\n", mediaPar);
printf("Media Impar: %.2f\n", mediaImpar);
return 0;
}
Resposta:int main(){
int tamPar, tamImpar, i, vetDigitado[10],vetPar[10],vetImpar[10];
tamPar=0;
tamImpar=0;
for(i=0;i<10;i++){
printf("\nDigite o %d.o numero: ", i+1);
scanf("%d%*c", &vetDigitado[i]);
if(vetDigitado[i] % 2 == 0){
vetPar[i]=vetDigitado[i];
tamPar++;
}
else{
vetImpar[i]=vetDigitado[i];
tamImpar++;
}
}
for(i=0; i<tamPar; i++){
printf("\nVetor Par: %d \n", vetPar[i]);
}
for(i=0; i<tamImpar; i++){
printf("\nVetor Impar: %d \n", vetImpar[i]);
}
return 0;
}
Explicação:Cada vetor possui 10 itens.
vetDigitado foi preenchido completamente e os elementos nos outros dois acompanhavam a mesma posição correspondente "i" até o seu final. - Ora, sendo assim ao serem exibidos dever-se-ia ter sido utilizado o seu comprimento total (10) ao invés de tamPar e tamImpar.