Lenguaje C- La sentencia if

iSearchNotes is a FREE service that allows College Students to
Search and Share Class Notes.

Vote Up
0
Vote Down
By: profeinformatica 11
May 30, 2011 | Computer Science - Vicente Torregrosa
Save Notes for Word
.doc
46991
views

Lenguaje C - La sentencia if

La sentencia if sirve para ejecutar una serie de instrucciones si se cumple una determinada condición. If en inglés significa si (condicional).

La forma general de la sentencia if es la siguiente:

             if (condicion)

             {

                         sentencia1;

                         sentencia2;

                              ...

                        sentencia n;

             }

             siguiente sentencia

La condición es una expresión que puede resultar verdadera o falsa. Si la condición es cierta, entonces el procesador ejecutará las sentencias del bloque entre llaves. Si no es cierta, el programa ignora todas las sentencias y continuará por la siguiente sentencia.

Para realizar comparaciones es necesario utilizar los operadores lógicos que ya vimos en el tema de las variables

Operadores lógicos

                       >        Mayor que

                       >=      Mayor o igual que

                      <         Menor que

                      <=       Menor o igual que

                      ==       Igual que

                      !=        No igual que

                      &&       Función lógica Y

                      ||         Función lógica O

                      !          Función lógica NO

Ejemplo 1:

                     int x;

                     x = 10;

                     if (x > 5)

                     {

                               printf ("x es mayor que 5\n");

                     }

El resultado de ejecutar este programa es el mensaje x es mayor que 5.

Ejemplo 2:

                     int x;

                     x = 10;

                     if (x > 25)

                     {

                               printf ("x es mayor que 25\n");

                     }

El resultado de ejecutar este programa es que no aparece ningún mensaje, como la condición ahora no se cumple, no ejecuta el printf

Ejemplo 3:

Hacer un programa que pida al usuario un número del 1 al 10. Si el usuario mete un número mayor que 10 debe aparecer un mensaje de error. Si el usuario mete un número menor que 1, también debe aparecer un mensaje de error.

                     int x;

                     printf ("Introduce un número del 1 al 10");

                     scanf("%d", &x);

                     if (x > 10)

                     {

                              printf ("Error: has introducido un número mayor que 10\n");

                     }

                     if (x < 1)

                     {

                             printf ("Error: has introducido un número menor que 1\n");

                     }

                    printf ("El número introducido es: %d", x);

Esta vez es el usuario el que asigna un valor a la variable x utilizando scanf.

 

 

Funciones lógicas

Tabla de verdad de la función lógica O ( II )

El resultado es verdadero cuando alguna condición es verdadera.

Tabla de verdad de la función lógica Y ( && )

El resultado es verdadero cuando las dos condiciones son verdaderas

Ejemplo 4:

Los dos if del ejemplo anterior se pueden simplificar en un sólo if. Basta poner las 2 condiciones en el mismo if con el operador || (O lógico)

                     int x;

                     printf ("Introduce un número del 1 al 10");

                     scanf("%d", &x);

                     if ( (x > 10) || (x < 1) )

                     {

                              printf ("Error: has introducido un número no válido. Tiene que estar entre 1 y 1 0\n");

                     }

                    printf ("El número introducido es: %d\n", x);

La condición del if la podríamos "leer" como: Si x es mayor que 10 o x es menor que 1, entonces...

Si alguna de las 2 condiciones se cumple, entonces es cierto. El símbolo | está en la tecla del 1.

 

Ejemplo 5:

Se le pide a un usuario que introduzca el mes y el día de su nacimiento, si la fecha fue 19 de marzo queremos que aparezca el mensaje "Usted nació el día de San José".

                     int dia;

                     int mes;

                     printf ("Introduce el mes de nacimiento: ");

                     scanf("%d", &mes);

                     printf ("Introduce el dia de nacimiento: ");

                     scanf("%d", &dia);

                     if ( (mes == 3) &&  (dia == 19) )

                     {

                              printf ("Usted nació el día de San José\n");

                     }

La condición del if la podríamos leer como: Si el mes es 3 y el día es 19 entonces...

La condición del if sóloserá cierta si la primera comparación y la segunda son ciertas. Si alguna de ellas es falsa, no se cumple.

La función lógica Y se escribe en C como &&. El símbolo & está en la tecla del número 6.

EJERCICIO CATEGORÍAS

    int edad;
    
    printf("Qué edad tienes? ");
    scanf("%d", &edad);
    
    if (edad < 18)
    {
        printf("Eres niño");
    }
    
    if ((edad>=18) && (edad<=30))
    {
        printf("Eres joven");
    }    
    
    if ((edad>=31) && (edad<=60))
    {
        printf("Eres adulto");
    }
    
    if (edad > 60)
    {
        printf("Eres viejo");
    }

 


------------------------------------------------------------------      EN EL EXAMEN ENTRA HASTA AQUÍ   -----------------------------------------------------------

Else

A la sentencia if se le puede añadir una parte opcional que es la sentencia else. Else en inglés significa si no.

La forma general es

                   if (condicion)

                   {

                               sentencias...

                   }

                   else

                   {

                                sentencias...

                   }

Al evaluar la condicion, si es cierta se ejecutan las sentencias, y si es falsa se ejecutan las sentencias del bloque else.

Ejemplo 5:  Programa que pide dos números y que intenta calcular la división entre ellos.

                  int x;

                  int y;

                  float division;


                  printf ("Introduce el valor de x");

                  scanf("%d", &x);

                  printf ("Introduce el valor de y");

                  scanf("%d", &y);


                 if (y != 0)

                 {

                          division = x / y;

                          printf ("La division es %f", division\n);

                 }

                 else

                 {

                             printf ("ERROR: No se puede dividir un número entre 0\n");

                 }

La condición (y != 0) significa (y distinto de 0).

Si no se cumple es porque y = 0, no se puede calcular x / y  y muestra el mensaje de error.

 

 

 

 

 

Enjoyed These Notes?
Your support will help spread the extreme awesomeness that is iSearchNotes!

0 Comments

You must login to comment.
iSearchNotes.com on Facebook

Login - Register