Last active
August 24, 2017 19:12
-
-
Save vinicioslc/b0665cd76db9642cd9acc262c3ebd7ac to your computer and use it in GitHub Desktop.
Calculadora de IMC em C++
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
// | |
// main.cpp | |
// Calculadora de IMC | |
// | |
// Created by Vinicios de Lima Clarindo on 24/08/17. | |
// Copyright © 2017 Vinicios de Lima Clarindo. All rights reserved. | |
// | |
/* Script criado para calcular o valor total de IMC conforme entrada do usuário | |
* Além de informar qual o estado atual do usuário, se esta gordo demais ou magro demais. | |
* Autor : https://github.com/vinicioslc | |
* Criado em : 01 - 08 - 2017 | |
*/ | |
#include <iostream> | |
using namespace std; | |
//Comentários da ide... | |
/* run this program using the console pauser or add your own getch, system("pause") or input loop */ | |
//retorna verdadeira se o valor de entrada esta entre dois valores | |
bool EstaEntre (float valorDeEntrada, float valorMinimo, float valorMaximo){ | |
//valor é maior ou igual a "valorMinimo" ? e é igual ou menor a "valorMaximo" ? | |
if ( valorDeEntrada >= valorMinimo && valorDeEntrada <= valorMaximo){ | |
return true; // retorne verdade | |
} | |
else { | |
return false; // senão retorne falso | |
} | |
} | |
//esse método retorna para o usuário o estado atual do seu IMC corporal. | |
void ImprimirEstadoDoIMC (float imcResultado){ | |
cout << "\n[ "; | |
if (imcResultado < 17){ | |
cout << "Você esta bem magro isso e preocupante..."; | |
} | |
else if (EstaEntre(imcResultado, 17, 18.49)) | |
{ | |
cout << "Você tem um nivel de massa corporal baixa."; | |
} | |
else if (EstaEntre(imcResultado, 18.8, 24.9)) | |
{ | |
cout << "Seu peso esta ideal para sua altura."; | |
} | |
// é igual a 25 ? | |
else if (EstaEntre(imcResultado, 24.9, 25)) { | |
cout << "Você esta com um sobrepeso, e melhor dar uma corridinha."; | |
} | |
else if (imcResultado > 25){ | |
cout << "Você esta bem gordo isso e preocupante..."; | |
} | |
else { | |
cout << "Eu nao sei a resposta ! AAAAAaaaaah"; | |
} | |
cout << " ]" << endl; | |
return; | |
} | |
// retorne valor total do IMC de acordo com a entrada | |
float RetornarIMC (float peso, float altura) { | |
return peso / (altura * altura); | |
} | |
// metodo principal | |
int main(int argc, char** argv) { | |
float alturaDoUsuario = 0; | |
float pesoDoUsuario = 0; | |
float resultadoIMC = 0; | |
cout << "Entre com sua altura em M.cm Ex.: 1.80 \n"; | |
cin >> alturaDoUsuario; | |
cout << "Entre com seu peso em Kg Ex.: 70 \n"; | |
cin >> pesoDoUsuario; | |
//calcula peso total | |
resultadoIMC = RetornarIMC(pesoDoUsuario, alturaDoUsuario); | |
//Exibe peso, altura e o IMC total | |
cout << "Resultado do IMC: " << "\n- Altura :" << alturaDoUsuario << "\n- Peso :" << pesoDoUsuario << "\n- IMC Total :" << resultadoIMC << endl; | |
//Exibe a mensagem sobre o estado do IMC ao usuário | |
ImprimirEstadoDoIMC(resultadoIMC); | |
//finaliza aplicação | |
return 0; | |
} |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment