Ir ao conteúdo
  • Cadastre-se

C Média Vetor com Maior que a Média


Visitante

Posts recomendados

Crie um programa que leia 4 notas e armazene-as em um vetor. Em seguida o programa deverá varrer todas as posições do vetor e calcular a média aritmética simples. Em uma segunda varredura, deverão ser mostradas as notas que estão acima da média.

#include <stdio.h>
#include <stdlib.h>

int main () {
int vetor[4], i;
float soma = 0;
float media;

for ( i = 0; i < 4; i++ ) {
printf ( "Digite um valor: ", i + 1 );
scanf ( "%d", &vetor[i] );
}
soma = soma + vetor[i];

media = soma / 4;

printf ( "\nMedia : %.2f\n", media );

return 0;
}

 

Link para o comentário
Compartilhar em outros sites

@VictóriaS2     media é float e vetor é int , os dois não se combinam , melhor passar o vetor para float , e seu código poderia ser assim   :

#include <stdio.h>
#include <stdlib.h>
int main ()
{
    float vetor[4],soma = 0,
          media;
    int i;
    for ( i = 0; i < 4; i++ )
    {
        printf ( "Digite o %d valor: ", i + 1 );
        scanf ( "%f", &vetor[i] );
        soma = soma + vetor[i];
    }
    media = soma / 4;
    printf ("\nMedia : %.2f\n", media );
    float ax = vetor[0];                                // auxiliar na busca
    for(i=1; i<4; i++)                                  //percorrer o vetor novamente
        if(ax<vetor[i])                                 //comparar
            ax = vetor[i];                              //armazena o maior
    printf ("\nA Nota Maior Que A Media : %.2f\n", ax );//escreve o maior
    return 512;
}

 

  • Curtir 1
Link para o comentário
Compartilhar em outros sites

38 minutos atrás, devair1010 disse:

@VictóriaS2     media é float e vetor é int , os dois não se combinam , melhor passar o vetor para float , e seu código poderia ser assim   :


#include <stdio.h>
#include <stdlib.h>
int main ()
{
    float vetor[4],soma = 0,
          media;
    int i;
    for ( i = 0; i < 4; i++ )
    {
        printf ( "Digite o %d valor: ", i + 1 );
        scanf ( "%f", &vetor[i] );
        soma = soma + vetor[i];
    }
    media = soma / 4;
    printf ("\nMedia : %.2f\n", media );
    float ax = vetor[0];                                // auxiliar na busca
    for(i=1; i<4; i++)                                  //percorrer o vetor novamente
        if(ax<vetor[i])                                 //comparar
            ax = vetor[i];                              //armazena o maior
    printf ("\nA Nota Maior Que A Media : %.2f\n", ax );//escreve o maior
    return 512;
}

 

Neste código aparece somente uma nota maior que a media no exemplo que o meu professor deu foi assim

Entrada 7 5 9 6 Saída 6.75 Media Acima da Média 7 9 Será que você pode me auxiliar?

 

Link para o comentário
Compartilhar em outros sites

@VictóriaS2 Siga uma receita de bolo:

  1. Preencha seu vetor.
  2. Rode um loop nesse vetor acumulando a soma de seus valores.
  3. Fora do loop, divida a soma pela quantidade de elementos do vetor (isso te dá a média).
  4. Rode um loop no vetor de novo, comparando o valor de cada posição, com o valor da média, caso seja maior, imprima.
  • Curtir 2
Link para o comentário
Compartilhar em outros sites

@VictóriaS2      para mostrar a saída assim precisa mudar algumas coisas , e seu código poderia ser assim :

#include <stdio.h>
#include <stdlib.h>
int main ()
{
    float vetor[4],soma = 0,
          media;
    int i;
    for ( i = 0; i <4; i++ )
    {
        printf ( "Digite o %d valor: ", i + 1 );
        scanf ( "%f", &vetor[i] );
    }
    for(i=0;i<4;i++)
    {
        soma += vetor[i];
    }
    media = soma / 4;
    printf ("\nMedia : %.2f\n", media );
       
    for(i=0; i<4; i++)                                  //percorrer o vetor novamente
        if(media < vetor[i])  
            printf ("%.2f ", vetor[i] );//escreve as maiores
    return 512;
}


 

  • Curtir 1
Link para o comentário
Compartilhar em outros sites

Em 05/12/2020 às 17:55, devair1010 disse:

  for(i=0;i<4;i++)
    {
        soma += vetor[i];
    }

Me desculpe parecer um pouco desprovida de conhecimento mas, você pode me explicar qual a utilidade dessa parte do código?

Link para o comentário
Compartilhar em outros sites

Em 05/12/2020 às 11:48, VictóriaS2 disse:

Em seguida o programa deverá varrer todas as posições do vetor e calcular a média aritmética simples

@VictóriaS2    esse laço de repetição é para percorrer ou varrer todo o vetor , como o enunciado diz , e calcular a media simples , pois o enunciado precisa ser seguido a risca .

  • Curtir 1
Link para o comentário
Compartilhar em outros sites

Crie uma conta ou entre para comentar

Você precisa ser um usuário para fazer um comentário

Criar uma conta

Crie uma nova conta em nossa comunidade. É fácil!

Crie uma nova conta

Entrar

Já tem uma conta? Faça o login.

Entrar agora

Sobre o Clube do Hardware

No ar desde 1996, o Clube do Hardware é uma das maiores, mais antigas e mais respeitadas comunidades sobre tecnologia do Brasil. Leia mais

Direitos autorais

Não permitimos a cópia ou reprodução do conteúdo do nosso site, fórum, newsletters e redes sociais, mesmo citando-se a fonte. Leia mais

×
×
  • Criar novo...