Desafío de repaso n.º 2
Parte de la sección Fundamentos del Journey de C de Coddy. Lección 36 de 63.
Desafío
FácilCrea un programa que lea el peso de una persona (en kg) y su altura (en metros), y después:
- Compruebe que cada entrada sea un número (
scanfdevuelve1)
Si el peso o la altura no es un número, imprime:Invalid input type! - Valide que el peso esté entre 30 y 300 kg
Si el peso está fuera del rango, imprime:Weight out of range! - Valide que la altura esté entre 1.0 y 2.5 metros
Si la altura está fuera del rango, imprime:Height out of range! - Si todas las validaciones se cumplen, calcule e imprima el BMI (índice de masa corporal) con 1 decimal
- Fórmula del BMI: weight / (height * height)
- Imprima la categoría de peso de la persona según el BMI:
- Menos de 18.5:
Underweight - De 18.5 a 24.9:
Normal weight - De 25.0 a 29.9:
Overweight - 30.0 o más:
Obese
- Menos de 18.5:
Formato de salida de ejemplo para una entrada válida:
BMI: 24.8
Category: Normal weightPruébalo tú mismo
#include <stdio.h>
int main() {
float weight, height, bmi;
int weight_result, height_result;
weight_result = scanf("%f", &weight);
height_result = scanf("%f", &height);
// Valida la entrada
// Calcula el BMI
// Determina la categoría de peso
// Imprime los resultados
return 0;
}Todas las lecciones de Fundamentos
2Variables
Tipos de datosEnteroFloat - DoubleCaracteresBooleanosConstantesConceptos básicos de printfReglas para nombrar variablesConversión de tipos, parte 1Conversión de tipos, parte 2Desafío de repaso5Entrada y salida
Especificadores de formatoConceptos básicos de scanfDesafío de repaso n.º 1Validación de entradaDesafío de repaso n.º 23Operadores
Operadores aritméticosOperador móduloIncremento/DecrementoOperadores de asignaciónOperadores relacionalesOperadores lógicos Parte 1Operadores lógicos Parte 2Operadores lógicos Parte 3Desafío de repasoPractica por tu cuenta: Compilador de C online