#include <stdio.h>
#include <string.h>
#define MAX_PACIENTES 10
// Definición de la estructura de Paciente
typedef struct {
int numero;
char nombre[100];
char telefono[20];
int diaNacimiento;
int mesNacimiento;
int anioNacimiento;
char correo[100];
int edad;
float estatura;
float peso;
float IMC;
} Paciente;
// Prototipo de función
float calcularIMC(float peso, float estatura);
int main() {
Paciente pacientes[MAX_PACIENTES];
int n;
printf("¿Cuántos pacientes deseas registrar? (Max 10): ");
for (int i = 0; i < n; i++) {
// Leer los datos del paciente
printf("\nDatos del paciente #%d\n", i
+ 1);
pacientes[i].numero = i + 1;
getchar(); // Consume el salto de línea previo fgets(pacientes
[i
].
nombre, sizeof(pacientes
[i
].
nombre), stdin
); strtok(pacientes
[i
].
nombre, "\n"); // Eliminar el salto de línea
fgets(pacientes
[i
].
telefono, sizeof(pacientes
[i
].
telefono), stdin
); strtok(pacientes
[i
].
telefono, "\n");
printf("Fecha de nacimiento (dd mm aaaa): "); scanf("%d %d %d", &pacientes
[i
].
diaNacimiento, &pacientes
[i
].
mesNacimiento, &pacientes
[i
].
anioNacimiento);
printf("Correo electrónico: "); fgets(pacientes
[i
].
correo, sizeof(pacientes
[i
].
correo), stdin
); strtok(pacientes
[i
].
correo, "\n");
scanf("%d", &pacientes
[i
].
edad);
printf("Estatura (en metros, ejemplo: 1.70): "); scanf("%f", &pacientes
[i
].
estatura);
scanf("%f", &pacientes
[i
].
peso);
pacientes[i].IMC = calcularIMC(pacientes[i].peso, pacientes[i].estatura);
// Mostrar los datos del paciente y su clasificación de IMC
printf("\nInformación del paciente #%d\n", pacientes
[i
].
numero); printf("Nombre: %s\n", pacientes
[i
].
nombre); printf("IMC: %f\n", pacientes
[i
].
IMC);
if (pacientes[i].IMC < 18.5) {
printf("Clasificación: Bajo peso\n"); } else if (pacientes[i].IMC >= 18.5 && pacientes[i].IMC < 24.9) {
printf("Clasificación: Peso normal\n"); } else if (pacientes[i].IMC >= 24.9 && pacientes[i].IMC < 29.9) {
printf("Clasificación: Sobrepeso\n"); } else {
printf("Clasificación: Obesidad\n"); }
}
return 0;
}
float calcularIMC(float peso, float estatura) {
return peso / (estatura * estatura);
}
I2luY2x1ZGUgPHN0ZGlvLmg+CiNpbmNsdWRlIDxzdHJpbmcuaD4KCiNkZWZpbmUgTUFYX1BBQ0lFTlRFUyAxMAoKLy8gRGVmaW5pY2nDs24gZGUgbGEgZXN0cnVjdHVyYSBkZSBQYWNpZW50ZQp0eXBlZGVmIHN0cnVjdCB7CiAgICBpbnQgbnVtZXJvOwogICAgY2hhciBub21icmVbMTAwXTsKICAgIGNoYXIgdGVsZWZvbm9bMjBdOwogICAgaW50IGRpYU5hY2ltaWVudG87CiAgICBpbnQgbWVzTmFjaW1pZW50bzsKICAgIGludCBhbmlvTmFjaW1pZW50bzsKICAgIGNoYXIgY29ycmVvWzEwMF07CiAgICBpbnQgZWRhZDsKICAgIGZsb2F0IGVzdGF0dXJhOwogICAgZmxvYXQgcGVzbzsKICAgIGZsb2F0IElNQzsKfSBQYWNpZW50ZTsKCi8vIFByb3RvdGlwbyBkZSBmdW5jacOzbgpmbG9hdCBjYWxjdWxhcklNQyhmbG9hdCBwZXNvLCBmbG9hdCBlc3RhdHVyYSk7CgppbnQgbWFpbigpIHsKICAgIFBhY2llbnRlIHBhY2llbnRlc1tNQVhfUEFDSUVOVEVTXTsKICAgIGludCBuOwoKICAgIHByaW50Zigiwr9DdcOhbnRvcyBwYWNpZW50ZXMgZGVzZWFzIHJlZ2lzdHJhcj8gKE1heCAxMCk6ICIpOwogICAgc2NhbmYoIiVkIiwgJm4pOwoKICAgIGZvciAoaW50IGkgPSAwOyBpIDwgbjsgaSsrKSB7CiAgICAgICAgLy8gTGVlciBsb3MgZGF0b3MgZGVsIHBhY2llbnRlCiAgICAgICAgcHJpbnRmKCJcbkRhdG9zIGRlbCBwYWNpZW50ZSAjJWRcbiIsIGkgKyAxKTsKCiAgICAgICAgcGFjaWVudGVzW2ldLm51bWVybyA9IGkgKyAxOwoKICAgICAgICBwcmludGYoIk5vbWJyZTogIik7CiAgICAgICAgZ2V0Y2hhcigpOyAgLy8gQ29uc3VtZSBlbCBzYWx0byBkZSBsw61uZWEgcHJldmlvCiAgICAgICAgZmdldHMocGFjaWVudGVzW2ldLm5vbWJyZSwgc2l6ZW9mKHBhY2llbnRlc1tpXS5ub21icmUpLCBzdGRpbik7CiAgICAgICAgc3RydG9rKHBhY2llbnRlc1tpXS5ub21icmUsICJcbiIpOyAvLyBFbGltaW5hciBlbCBzYWx0byBkZSBsw61uZWEKCiAgICAgICAgcHJpbnRmKCJUZWzDqWZvbm86ICIpOwogICAgICAgIGZnZXRzKHBhY2llbnRlc1tpXS50ZWxlZm9ubywgc2l6ZW9mKHBhY2llbnRlc1tpXS50ZWxlZm9ubyksIHN0ZGluKTsKICAgICAgICBzdHJ0b2socGFjaWVudGVzW2ldLnRlbGVmb25vLCAiXG4iKTsKCiAgICAgICAgcHJpbnRmKCJGZWNoYSBkZSBuYWNpbWllbnRvIChkZCBtbSBhYWFhKTogIik7CiAgICAgICAgc2NhbmYoIiVkICVkICVkIiwgJnBhY2llbnRlc1tpXS5kaWFOYWNpbWllbnRvLCAmcGFjaWVudGVzW2ldLm1lc05hY2ltaWVudG8sICZwYWNpZW50ZXNbaV0uYW5pb05hY2ltaWVudG8pOwoKICAgICAgICBwcmludGYoIkNvcnJlbyBlbGVjdHLDs25pY286ICIpOwogICAgICAgIGdldGNoYXIoKTsKICAgICAgICBmZ2V0cyhwYWNpZW50ZXNbaV0uY29ycmVvLCBzaXplb2YocGFjaWVudGVzW2ldLmNvcnJlbyksIHN0ZGluKTsKICAgICAgICBzdHJ0b2socGFjaWVudGVzW2ldLmNvcnJlbywgIlxuIik7CgogICAgICAgIHByaW50ZigiRWRhZDogIik7CiAgICAgICAgc2NhbmYoIiVkIiwgJnBhY2llbnRlc1tpXS5lZGFkKTsKCiAgICAgICAgcHJpbnRmKCJFc3RhdHVyYSAoZW4gbWV0cm9zLCBlamVtcGxvOiAxLjcwKTogIik7CiAgICAgICAgc2NhbmYoIiVmIiwgJnBhY2llbnRlc1tpXS5lc3RhdHVyYSk7CgogICAgICAgIHByaW50ZigiUGVzbyAoZW4ga2cpOiAiKTsKICAgICAgICBzY2FuZigiJWYiLCAmcGFjaWVudGVzW2ldLnBlc28pOwoKICAgICAgICBwYWNpZW50ZXNbaV0uSU1DID0gY2FsY3VsYXJJTUMocGFjaWVudGVzW2ldLnBlc28sIHBhY2llbnRlc1tpXS5lc3RhdHVyYSk7CgogICAgICAgIC8vIE1vc3RyYXIgbG9zIGRhdG9zIGRlbCBwYWNpZW50ZSB5IHN1IGNsYXNpZmljYWNpw7NuIGRlIElNQwogICAgICAgIHByaW50ZigiXG5JbmZvcm1hY2nDs24gZGVsIHBhY2llbnRlICMlZFxuIiwgcGFjaWVudGVzW2ldLm51bWVybyk7CiAgICAgICAgcHJpbnRmKCJOb21icmU6ICVzXG4iLCBwYWNpZW50ZXNbaV0ubm9tYnJlKTsKICAgICAgICBwcmludGYoIklNQzogJWZcbiIsIHBhY2llbnRlc1tpXS5JTUMpOwogICAgICAgIAogICAgICAgIGlmIChwYWNpZW50ZXNbaV0uSU1DIDwgMTguNSkgewogICAgICAgICAgICBwcmludGYoIkNsYXNpZmljYWNpw7NuOiBCYWpvIHBlc29cbiIpOwogICAgICAgIH0gZWxzZSBpZiAocGFjaWVudGVzW2ldLklNQyA+PSAxOC41ICYmIHBhY2llbnRlc1tpXS5JTUMgPCAyNC45KSB7CiAgICAgICAgICAgIHByaW50ZigiQ2xhc2lmaWNhY2nDs246IFBlc28gbm9ybWFsXG4iKTsKICAgICAgICB9IGVsc2UgaWYgKHBhY2llbnRlc1tpXS5JTUMgPj0gMjQuOSAmJiBwYWNpZW50ZXNbaV0uSU1DIDwgMjkuOSkgewogICAgICAgICAgICBwcmludGYoIkNsYXNpZmljYWNpw7NuOiBTb2JyZXBlc29cbiIpOwogICAgICAgIH0gZWxzZSB7CiAgICAgICAgICAgIHByaW50ZigiQ2xhc2lmaWNhY2nDs246IE9iZXNpZGFkXG4iKTsKICAgICAgICB9CiAgICB9CgogICAgcmV0dXJuIDA7Cn0KCmZsb2F0IGNhbGN1bGFySU1DKGZsb2F0IHBlc28sIGZsb2F0IGVzdGF0dXJhKSB7CiAgICByZXR1cm4gcGVzbyAvIChlc3RhdHVyYSAqIGVzdGF0dXJhKTsKfQo=