Menú principal

miércoles, 18 de noviembre de 2015

Sentencias de control condicionales (if)

Con estas sentencias de control condicionales podremos ejecutar unas instrucciones u otras dependiendo de que se cumplan determinadas condiciones.

Os voy a poner un ejemplo con un programa que pida el dividendo y el divisor de una división y calcule el cociente si y solo si el divisor es distinto de 0. Fijaros como pongo distinto de 0 en la condición del if (!=)

#include<stdio.h>
main()
{
    double divisor, dividendo, cociente;

    printf("Intro el dividendo: ");
    scanf("%lf", &dividendo);

    printf("Intro el divisor: ");
    scanf("%lf", &divisor);

    if(divisor!=0)
    {
        cociente=dividendo/divisor;
        printf("El cociente de %lf / %lf es: %lf", dividendo, divisor, cociente);
    }
}



Si introducimos 0 como divisor, el programa no da ninguna respuesta. A continuación veremos la sentencia condicional el if-else para corregir esto. Esta función es muy fácil de entender, simplemente si se cumple la condición del if se realiza y si no pues se realizará el else y viceversa. De tal forma que en el programa anterior si ponemos un else podremos sacar por pantalla:  "No es posible dividir por 0. Os dejo el programa para que lo podáis entender mejor.


#include<stdio.h>
main()
{
    double divisor, dividendo, cociente;

    printf("Intro el dividendo: ");
    scanf("%lf", &dividendo);

    printf("Intro el divisor: ");
    scanf("%lf", &divisor);

    if(divisor!=0)
    {
        cociente=dividendo/divisor;
        printf("El cociente de %lf / %lf es: %lf", dividendo, divisor, cociente);

    }
    else
        printf("No es posible dividir por 0");
}

Algo a destacar es que cuando utilicéis un igual en el if siempre hay que poner dos ejemplo: if(x==7)
Y otra cosa importante es cuando querais poner dos condiciones como por ejemlo que la edad de una persona sea mayor de 20 y menor de 70 años, lo escribais enlazando las dos condiciones con operadores lógicos como anteriormente os he explicado. En este caso sería:
if(edad>20 && edad<70)

No hay comentarios:

Publicar un comentario