Ir ao conteúdo

Posts recomendados

Postado

bom dia o programa esta dando uns erros esquisitos alguem me ajuda?

 

#include<stdio.h>
    
    
    int main()
    {
        double media;
        int i,sum;
    int x=12;
    int y=16;
    int z=20;
    int a=4;
int valores_testes[4]={a,x,y,z}
        sum=1 ;
        for (i=0,i>=4, i++){
            sum += valores_testes;
        }
    
    media = sum/i;
    printf(" A média é %d \n", media);
    
    return 0;
    
}
    

Postado

@Hugo_barbosa Olá. O primeiro erro q aparece em seu código é q você está inicializando a variável sum com o valor 1. Seria 0, já q se trata de uma soma.

Outro ponto é na forma como você usou seu for.  Perceba q, nesse exercício, o for deve ir do 0 até o valor 3, que correspondem aos 4 primeiros índices do vetor. 

Nesse caso seria dessa forma:

for (i = 0; i < 4; i++) // perceba q é usado o PONTO E VÍRGULA

E, ainda, como se trata da soma dos elementos de um vetor, é necessário passar os índices do mesmo na operação de soma.

Seria isso:

sum += valores_testes[i];

Finalmente, para exibir o resultado, perceba q você criou a variável média com sendo do tipo double, mas você está imprimindo o valor da mesma como se ela fosse um int, usando o %d. Logo, seria isso:

printf(" A media e %.2lf\n", media); // aqui eu estou usando uma formatação para q apenas duas casas decimais sejam impressas. Sem formatação ficaria %f (float) ou %lf (double)

Logo, seu código poderia ficar assim:

#include <stdio.h>

int main() {

    int i, x = 12, y = 16, z = 20, a = 14;
    int valores_testes[4] = { a, x, y, z};
    double sum = 0, media = 0;

    for (i = 0; i < 4; i++) {
        sum += valores_testes[i];
    }

    media = sum / i;
    printf("A media e %.2lf\n", media);

    return 0;

}

Mas é importante procurar entender exatamente onde estavam os erros e como os mesmos foram corrigidos, ok?

  • Moderador
Postado

@Hugo_barbosa  Já ia postar o código que eu fiz, mas o giu já explicou direitinho. Só uma coisa, você tentou usar acentos, mas C leva em conta o inglês que não tem acentos (acho que só uma palavra tem acento na verdade), pra que você possa utilizar acentuação você deve incluir a biblioteca: 

#include <locale.h>

e depois escrever:

setlocale(LC_ALL,"");

 

  • Curtir 1
Postado

O kkk muito obrigado terei mais atenção as recomendações dadas 

Há e obrigado pela biblioteca q me permite por acentos tava ficando tudo bugado e não sabia o motivo 

Obrigado e continuação de um bom dia

  • Curtir 1

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...

LANÇAMENTO!

eletronica2025-popup.jpg


CLIQUE AQUI E BAIXE AGORA MESMO!