preciso criar um programa onde é inserida uma seqüência de inteiros e ao digitar -1 (flag), o programa finaliza e tem q mostrar o máximo, o mínimo e a média.
Consegui implementar a média sem problemas, porém estou tendo dificuldade em encontrar o máximo e o mínimo.
Já tentei fazer um if dentro do loop da seqüência e até mesmo fazer funções separadas q me retornassem os máximos e mínimos (o programa nem sequer chegou a passar pelas funções, acredito q eu deva ter declarado variáveis fora do lugar, ou algo do gênero...)
Segue o programa para análise.
Desde já agradeço!
#include <stdio.h>
#include <conio.h>
char op;
int i=0, j, count=0, maior, menor;
int num[100], soma[100], totalnums;
float media;
int main(void)
{
do
{ do
{
printf("Maximo: %d",maior);
//printf("\nMinimo: %d",menor);
printf ("\nEntre com um numero (-1 termina): ");
scanf ("%d",&num[count]);
fflush(stdin);
soma[count]=num[count]+soma[count-1];
count++;
system("cls");
if(num[0]==-1)
{
printf("\n\n\t\t\tSEQUENCIA INEXISTENTE..");
getch();
system("cls");
soma[0]=0;
count=0;
}
//Calcula o maximo e o minimo (INCORRETO)
while(num[i]>num[i-1] && i<=count-1)
{
maior=num[i];
i++;
}
}while(num[count-1]!=-1);
printf("Maximo: %d",maior);
printf("\nMinimo: %d",menor);
//Mostra a sequencia
printf("\n");
for(j=0;j<=count-2;j++)
printf("%d ",num[j]);
//calcula a media
totalnums=count-1;
media=(float)soma[totalnums-1]/(totalnums);
printf("\nMedia : %.3f",media);
media,count=0;
printf("\n\n");
printf("Deseja calcular novamente? ");
fflush(stdin);
scanf("%c",&op);
system("cls");
if (op == 'n')
{ printf("\n\n\n\t\t\t\t*** FIM ***");
getch();
exit();
}
}while(op != 'n' || op != 'N');
}
Pergunta
Marcio Henrique
Boa noite!
preciso criar um programa onde é inserida uma seqüência de inteiros e ao digitar -1 (flag), o programa finaliza e tem q mostrar o máximo, o mínimo e a média.
Consegui implementar a média sem problemas, porém estou tendo dificuldade em encontrar o máximo e o mínimo.
Já tentei fazer um if dentro do loop da seqüência e até mesmo fazer funções separadas q me retornassem os máximos e mínimos (o programa nem sequer chegou a passar pelas funções, acredito q eu deva ter declarado variáveis fora do lugar, ou algo do gênero...)
Segue o programa para análise.
Desde já agradeço!
Editado por Marcio HenriqueLink para o comentário
Compartilhar em outros sites
5 respostass a esta questão
Posts Recomendados
Participe da discussão
Você pode postar agora e se registrar depois. Se você já tem uma conta, acesse agora para postar com sua conta.