• Lenguaje

    C

  • Descripción

    Dada el peso, la altura y el sexo, de unos estudiantes. Determinar la cantidad de vitaminas que deben consumir estos estudiantes, en base al siguiente criterio:
    - Si son varones, y su estatura es mayor a 1.60, y su peso es mayor o igual a 150 lb, su dosis, serán: 20% de la estatura y 80% de su peso. De lo contrario, la dosis será la siguiente: 30% de la estatura y 70% de su peso.
    - Si son mujeres, y su estatura es mayor de a 1.50 m y su peso es mayor o igual a 130 lb, su dosis será: 25% de la estatura y 75% de su peso. De lo contrario, la dosis será: 35% de la estatura y 65% de su peso.
    La dosis debe ser expresada en gramos.

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
#include <stdio.h>
#include <stdlib.h>
#include <conio.h>

int main (void)
{
    int genero;
    float dosis_en_gramos, estatura_en_metros, peso_en_gramos, peso_en_libras;
    char tecla_repetir;
    do {
        system ("cls");
        printf ("Ingresa el valor de estatura en metros: ");
        scanf ("%f", &estatura_en_metros);
        (void) getchar ();
        printf ("Ingresa el valor de peso en libras: ");
        scanf ("%f", &peso_en_libras);
        (void) getchar ();
        dosis_en_gramos=0;
        printf ("Selecciona el valor de genero.\n");
        printf ("\t1.- Mujer\n");
        printf ("\t2.- Var\242n\n");
        printf ("\t: ");
        do {
            scanf ("%d", &genero);
            (void) getchar ();
            if (genero<1||genero>2)
                printf ("Valor incorrecto. Ingr\202salo nuevamente.: ");
        } while (genero<1||genero>2);
        peso_en_gramos=peso_en_libras*453.59237;
        if(genero==2&&estatura_en_metros>1.6&&peso_en_libras>=150)
            dosis_en_gramos=estatura_en_metros*0.2+peso_en_gramos*0.8;
        if(genero==2&&(estatura_en_metros<1.6||peso_en_libras<150))
            dosis_en_gramos=estatura_en_metros*0.3+peso_en_gramos*0.7;
        if(genero==1&&estatura_en_metros>1.5&&peso_en_libras>=130)
            dosis_en_gramos=estatura_en_metros*0.25+peso_en_gramos*0.75;
        if(genero==1&&(estatura_en_metros<1.5||peso_en_libras<130))
            dosis_en_gramos=estatura_en_metros*0.35+peso_en_gramos*0.65;
        printf ("Valor de dosis en gramos: %g\n", dosis_en_gramos);
        printf ("Valor de peso en gramos: %g\n", peso_en_gramos);
        putchar ('\n');
        printf ("\250Deseas repetir el proceso? (S/N): ");
        do {
            tecla_repetir = (char) getch();
        } while (tecla_repetir!='s' && tecla_repetir!='n' && tecla_repetir!='S' && tecla_repetir!='N');
        putchar ('\n');
    } while (tecla_repetir=='s' || tecla_repetir=='S');
    return EXIT_SUCCESS;
}