Tutorial de Lenguaje C                                                                                               Dr. Roberto Gómez


LAS ITERACIONES:  el for ( )


Bloque 1
        for ( <Ins d.1>,<Ins d.2>, ..., <Ins d.n> ; <c.1> ;
                        <Ins i.1>,<lns i.2>, ..., <Ins i.m> )
                                           Bloque 2
Bloque 3

<Ins d.1> a <Ins d.1> y <Ins i.1> a <Ins i.m>:

son instrucciones simples (llamadas a una función o afectaciones)

Funcionamiento:

a) Ejecución del Bloque 1
b) Ejecución de <Ins d.1> después de <Ins d.2> hasta <Ins d.n>
c) Si la condición lógica, <c.1>:
            es verdadera entonces ejecución de:
                    Bloque 2
                    <Ins i.1> ... hasta <Ins i.m< en ese orden
                    regreso a c)
           sino ir a d)
d) Ejecución Bloque 3

Notas sobre el for

1. Si no hay condición => test condici'on es verdadero

2. Las instrucciones <Ins d.1> a <Ins d.n> y de <Ins i.1> a <Ins i.m> no son obligatorias

3. El for(;;) se considera como un ciclo infinito

prog13.c Primer ejemplo uso for()

/* Despliega la tabla de multiplicar (1-10) de un número n */

#include <stdio.h>

int main( )
{
                    int i,n,res;
 
                    printf(''Numero:'');
                    scanf(''%d'',&n);
                    for (i=1; i!=n; i++)
                    {
                        res = i*n;
                        printf(''%d * %d = %d \n'',n,i,res);
                    }
}

prog14.c Segundo ejemplo uso for()

/* Calculo factorial de n por tres métodos */

#include <stdio.h>

int main( )
{

                int i,r,n;
 
                printf(''Valor de n:'');
                scanf(''%d'',&n);

                /* primer método  */

                r=1;
                for (i=1; i<=n; i++)
                        r=r*i;
                printf(''Valor fact(%d) usando metodo 1:%d \n'',n,r);
 
                /* segundo método */

                for(r=n, i=n-1; i > 1; i=i-1);
                        r=r*i;
                printf(''Valor fact(%d) usando metodo 2:%d \n'',n,r);

                /* tercer método */

                for(r=n,i=n; i>2;)
                    {
                        i=i-1;
                        r=r*i;
                    }
                printf(''Valor fact(%d) usando metodo 3:%d \n'',n,r);
}
 
 

Ejercicios for

  1. Escribir un programa que muestre por pantalla todos los números múltiplos de 3 que hay entre el -15 y el 18, ambos inclusive.
  2. Escribir un programa  que pida un número y saque por pantalla su tabla de multiplicar

 

MENÚ PRINCIPAL