Solucionado (ver solução)
Solucionado
(ver solução)
3
respostas

Não é armazenado o valor da váriavel

Estou tentando criar uma calculadora para o IMC, porém o valor do IMC é sempre 0.00 independende os da entrada de dados. Como arrumo esse erro?

#include <stdio.h>;

float calculo_IMC(peso, altura){
    return (peso/(altura*altura));
}

int main(void){

    float peso;
    float altura;
    float IMC;

    printf("Informe a altura em metros: ");
    scanf("%f", &altura);

    printf("Informe o peso em Kg: ");
    scanf("%f", &peso);

    IMC = calculo_IMC();

    if (IMC < 18.5)
    {
        printf("IMC = %.2f Situacao: Abaixo do peso", IMC);
    } else if (18.5 <= IMC < 24.9) {
        printf("IMC = %.2f Situacao: Peso ideal");
    } else {
        printf("IMC = %.2f Situacao: Sobrepeso");
    }


    return 0;
}
3 respostas

Olá Erick, tudo bem?

Faltou inserir os parâmetros na chamada da função. Aqui:

IMC = calculo_IMC();

O correto é:

IMC = calculo_IMC(peso, altura);

Testa aí e nos diga se deu certo.

Imagem do erroContinuou dando o msmo erro

solução!

Olá, boa tarde, Erick! Tente definir o tipo dos parâmetros da função IMC:

float calculo_IMC(float peso, float altura)

testa e diz o que retornou :)

Quer mergulhar em tecnologia e aprendizagem?

Receba a newsletter que o nosso CEO escreve pessoalmente, com insights do mercado de trabalho, ciência e desenvolvimento de software