Ir ao conteúdo
  • Cadastre-se

C [Resolvido]Problema no grau do imc


Ir à solução Resolvido por Ansi C,

Posts recomendados

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

int main(){
	float imc, peso, altura;
	setlocale(LC_ALL, "Portuguese");
		
	printf("Olá, bem vindo a esta calculadora de IMC \nPrimeiramente, digite seu peso em kg : ");
	scanf("%f", &peso);
	
	printf("\nAgora digite sua altura em m: ");
	scanf("%f", &altura);
	
	printf ("\nAguarde um momento enquanto calculamos o imc...");
	printf ("\ncarregando...");
	Sleep (4000);
	
	imc = peso/(altura*altura);	
	
	if (imc < 10) {
		system("cls");
		printf("Seu imc é %f\n", imc);
		printf("\nDesnutrição de grau V, procure um médico imediatamente");
	} 
	else if ( imc >= 10 && imc <= 12,9 ) {
		system("cls");
		printf("Seu imc é %f\n", imc);
		printf("\n Desnutição grau IV, procure um médico");
	}
	else if ( imc >=13 && imc <= 15,9 ) {
		system("cls");
		printf("Seu imc é %f\n", imc);
		printf("\n Desnutrição grau III, procure um médico");
	}
	else if ( imc >= 16 && imc <= 16,9 ) {
		system("cls");
		printf("Seu imc é %f\n", imc);
		printf("\n Desnutrição grau II, procure um médico");
	}
	else if ( imc>=17 && imc<=18,4 ) {
		system("cls");
		printf("Seu imc é %f\n", imc);
		printf("\nDesnutrição grau I");
	}
	else if ( (imc>=18,5)&&(imc<=24,9) ) {
		system("cls");
		printf("Seu imc é %f\n", imc);
		printf("\nPeso ideal");
	}
	else if ( (imc>=25) && (imc<=29,9) ) {
		system("cls");
		printf("Seu imc é %f\n", imc);
		printf("Levemente acima do peso");
	}
	else if ( (imc>=30) && (imc<=34,5) ) {
		system("cls");
		printf("Seu imc é %f\n", imc);
		printf("\nObesidade grau I, procure um médico");
	}
	else if ( (imc>=35) && (imc<=39,9) ){
		system("cls");
		printf("Seu imc é %f\n", imc);
		printf("\nObesidade grau II, procure um médico");
	}
	else if (imc >40) {
		system("cls");
		printf("Seu imc é %f\n", imc);
		print("\nObesidade grau III, procure um médico imediatamente");
	}
}

O código funciona normalmente, o cálculo do imc sai correto, na hora de mostrar o grau, quando o resultado está abaixo de 10 ele funciona normalmente, mostrando "desnutrição de grau V", agora quando esta acima de 10, não importa o número, ele mostra "Desnutrição grau IV", mesmo o resultado estando fora dos parâmetros.

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