Jump to content

Maior, menor, media


tuasite

Recommended Posts

Boas pessoal quem em pode ajudar, fiz este codigo mas esta me a dar erro,  codigo é o seguinte:

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

int main()
{
    int i,num,maior,menor,soma;
printf("Digite um numero:\n");
scanf("%d",&num);
maior==num;
menor==num;
soma==num;
for (i=1;i<=6;i++)
        printf("Digite um numero:\n");
        scanf("%d",&num);
        soma==soma+num;
        if (num>maior)
        maior==num;
        if (num<menor)
        menor==num;
    printf("O numero maior foi o %d\n",maior);
    printf("o numeor menor for o %d\n",menor);
    printf("A media dos 7 numeros foi %d\n",soma/7);
return 0;
}

Obrigado 😛

Link to comment
Share on other sites

Boas ora bem tens aí uns quantos erros:

maior==num -> tu aqui queres passar o valor de num para maior certo? Para isso só usas um '=', só usas dois '=' kd keres saber se uma valor é igual a outro ou não.

depois tens o ciclo for, se interpretei bem o ciclo tu queres que

for (i=1;i<=6;i++)
        printf("Digite um numero:\n");
        scanf("%d",&num);
        soma==soma+num;

apenas aquelas 3 instruçoes sejam dentro do ciclo for, para isso tens que por

for (i=1;i<=6;i++)
    {
        printf("Digite um numero:\n");
        scanf("%d",&num);
        soma==soma+num;
    }

Já agora tu estas a utilizar apenas numeros inteiros, se fosse a ti substituia, e usava floats, para depois no resultado final, te dar um número com vírgula.

Por fim, aconselho-te a apagar o buffer, de cada vez que usas um scanf. Para isso eu normalmente uso a funcção getchar().

Como podes ver declarei a variavel buffer, e depois de cada scanf, fiz buffer=getchar();

Deste modo livras-te do '\n' que existe sempre que usas um enter, e que no próximo scanf, ia dar problemas...

Sendo assim o código final, pode ser este:

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

int main()
{
    char buffer;
    float i,num,maior,menor,soma;
printf("Digite um numero:\n");
scanf("%f",&num);
buffer=getchar();
maior=num;
menor=num;
soma=num;
for (i=1;i<=6;i++)
{        
printf("Digite um numero:\n");
        scanf("%f",&num);
buffer=getchar();
        soma=soma+num;
}
        if (num>maior)
        maior=num;
        if (num<menor)
        menor=num;
    printf("O numero maior foi o %.1f\n",maior);
    printf("o numeor menor for o %.1f\n",menor);
    printf("A media dos 7 numeros foi %.2f\n",soma/7);
return 0;
}

Abraços, qualquer dúvida pergunta 😛

Órale MI RAZA, MY BLOOD HOLMES BELONGS TO ME ÉSE...

EENNNGGGGEEEENNNNNNNHHHHAAAARRRRRIIIIIIIIIIAAAAAAAINFORMATICASISTEMAS....

Link to comment
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
×
×
  • Create New...

Important Information

By using this site you accept our Terms of Use and Privacy Policy. We have placed cookies on your device to help make this website better. You can adjust your cookie settings, otherwise we'll assume you're okay to continue.