INSTRUCCIONES DE CONTROL

Las instrucciones de control son las instrucciones condicionales if y switch y las instrucciones para el control de bucles (loops) while, for y do-wile
Es importante recordar que cuando se habla de instrucciones se debe entender un sola instrucción, un bloque de ellas o una instrucción vacía.

LA INSTRUCCIÓN if

La sintaxis de esta instrucción tiene dos formas:

FORMA 1:

  • if(condición)instrucción;

Representación de la instrucción if según M.Jackson y diagrama de Flujo


La forma 1 es: Si la condición de if es verdadera (tiene un valor distinto de cero) se efectúa la instrucción (o bloque de instrucciones).

FORMA 2:

  • if(condición)instrucción1;
    else instrucción2;

Representación de la instrucción if según M.Jackson y diagrama de Flujo


La forma es: Si la condición de if es verdadera (tiene un valor distinto de cero) se efectúa la instrucción 1(o bloque de instrucciones). En caso contrario la instrucción 2.

: Cálculo del número más pequeño
  • #include <stdio.h>
    long unsigned int minimo(long unsigned int x,
    long unsigned int y,
    long unsigned int z)
    {

  • unsigned long int p;
    if((x<y)&&(x<z))p=x;
    else
  • {

  • if(y<z)p=y;
    else p=z;
  • }

return p;
}
 

  • void main()
    {

  • long unsigned int a,b,c;
    printf("\n Introduce tres números ?");
    scanf("%lu%lu%lu",&a,&b,&c);
    printf("\n El más pequeño es el %lu",minimo(a,b,c));
    }
 

LA INSTRUCCIÓN switch

La instrucción switch elige una instrucción (o bloque de instrucciones) de acuerdo con el valor de la variable que coincida con una de las constante expresadas en case.

La instrucción default, facultativa, es ejecutada en el caso de que la variable no coincida con ninguna de las constantes señaladas. En el caso de que la instrucción default se omita y la variable no coincida con ninguna de las constantes expresadas no se ejecuta ninguna de las instrucciones.

: La instrucción switch según M. Jackson

 

: La instrucción switch según el diagrama de flujo.

: Menu simple

.

: Diagrama del programa menú con una sola pasada


  • #include <stdio.h>
    #include <conio.h>

    void main()
    {

  • int c;
    double d,v,pi=3.1416;
    gotoxy(20,2);printf("1: Longitud de la circunferencia");
    gotoxy(20,4);printf("2: Superficie del circulo");
    gotoxy(20,6);printf("3: Superficie de la esfera");
    gotoxy(20,8);printf("4: Volumen de la esfera");
    gotoxy(1,12);c=getch();
    if((c<`1')||(c>'4')) printf(" <- Error ");
    else
    {

  • printf("diametro ?");
    scanf("%lf",&d);
    gotoxy(10,15);
    switch(c)
    {

  • case `1':
    v=pi*d;
    printf("Longitud de la circunferencia=%-10.2f",v);
    break;
    case `2':
    v=pi*d*d/4;
    printf("Superficie del circulo=%-10.2f",v);
    break;
    case `3':
    v=pi*d*d/6;
    printf(" Superficie de la esfera=%-10.2f",v);
    break;
    case `4':
    v=pi*d*d*d*/6;
    printf("Volume de la esfera=%-10.2f",v);
    break;
    }
    }(/*switch*/
  • }/*else*/
 
 
 

EL BUCLE for

La sintaxis general es la siguiente:

En su forma más simple, la inicialización es una instrucción de asignación necesaria para atribuir un valore inicial a la variable de control de ciclo. La condición en cambio está constituida por una expresión de relación que determina el final del bucle verificando la variable de control respecto a un determinado valor. El incremento por norma general define la variación de la variable de control del ciclo cada vez que este se ejecuta. Estas tres partes van separadas del punto y coma. El bucle continúa la ejecución hasta que la condición resulte falsa en cuyo caso el ciclo acaba y el programa continúa con la instrucción que sigue a for

:Representación de la instrucción for según M. Jackson

 

: Instrucción for según diagrama de flujo

 
  • #include <stdio.h>
    #include <math.h>

    main()
    {

  • int i;
    double x=0;
    for (i=0;i<100;i++)
    {

  • if(i%7==0)printf("\n");
    printf("%-10.3f",sqrt(x++));
    }
  • }