Comparación efectos break y continue en los ciclos
Bloque
0
Bloque
0
Bloque 0
for(A; <c.1> ;
B)
while (
<c.1>)
do
Bloque
1
Bloque
1
Bloque 1
Bloque
2
Bloque
2
while ( <c.1>)
Bloque 2
Recordatorio funcionamiento ciclos:
a) Bloque
0.
a) Bloque
0.
a) Bloque 0.
b)
A.
b) si <c.1> es
verdad
b) Bloque 1.
c) si <c.1> es
verdad
entonces
c) si <c.1> es verdad entonces
entonces
b.1) Bloque1.
c.1) Bloque
1.
b.2) ir a
b)
regresar a b)
c.2)
B.
si-no
si-no
c.3) ir a
c)
ir a
c)
ir a d)
sino
c) Bloque
2.
d) Bloque 2.
ir a d).
d) Bloque 2.
Efectos del break y del continue :
La acción de un break en el bloque 1 es:
ir a
d).
ir a
c).
ir a d).
La acción de un continue en el bloque 1 es:
ir a
c.2).
ir a
b).
ir a c).
prog16.c Ejemplo uso break
/* Ejemplo uso break en un enunciado for() */
#include <stdio.h>
int main()
{
int i;
for (i=0; i!10; i++)
{
if (i == 5)
break;
printf(''%d'',i);
}
printf (''\n Fuera del ciclo
con valor i: %d \n'',i);
}
Salida ejecución:
0 1 2 3 4
Fuera del ciclo con valor de i: 5
prog17.c Ejemplo uso continue
/* Ejemplo uso continue en un
enunciado
for() */
/* Objetivo: saltarse la impresion
del numero 5 */
#include <stdio.h>
int main()
{
int i;
for (i=0; i!10; i++)
{
if (i == 5)
continue;
printf(''%d'',i);
}
printf(''\n Fuera del ciclo con
valor i: %d \n'',i);
}
Salida ejecución:
0 1 2 3 4 6 7 8 9
Fuera del ciclo con valor de i: 10
prog18.c Ejemplo uso break y continue
/* Cálculo cantidad de 0's,
1's
y caracteres diferentes a uno o a ceros.*/
/* Con la secuencia 00 se imprime el
número parcial de 0 y de 1; y */
/* con la secuencia 11 se da el
resultado
final */
#include <stdio.h>
int main()
{
int n0,n1,nA;
char c;
n0=0; n1=0; nA=0 ;
scanf(''%c'',&c);
while (c!='nr')
{
if (c == '0')
{
n0 = n0+1;
scanf(''%c'',&c);
if(c=='0')
{
n0 = n0+1;
printf(''n0=%d'',n0);
printf(''n1=%d \n'',n1);
scanf(''%c'',&c);
continue;
}
}
if (c=='1')
{
n1 = n1+1;
scanf(''%c'',&c);
if (c=='1')
{
n1 = n1+1;
break;
}
else
continue;
nA = nA+1;
scanf(''%c'',&c);
}
} /* del while */
printf(''n0=%d,n1=%d'',n0,n1);
printf('',nA=%d \n'',nA);
} /* del main() */
prog19.c Ejemplo break y continue dentro for y while
int main()
{
int i;
/* Ejemplo 1 */
/* El ciclo escribirá: ejemplo
1: 5 6 7 8 9 10 */
printf(''Ejemplo 1: '');
for (i=1; i <= 10; i++)
{
if(i < 5)
continue;
printf(''%d '',i);
}
/* Ejemplo 2: */
/* Este ejemplo escibirá:
ejemplo
2: 1 2 3 4 5 -6 */
printf(''\n Ejemplo 2:'');
for (i=1; i!=10; i=i+1)
{
if (i > 5)
break;
printf('' %d'',i);
}
printf('' %d'',-i,);
/* Ejemplo 3 */
/* Este ejemplo escibirá:
ejemplo
3: 3 7 11 -15 */
printf(''\n Ejemplo 3:'');
i=0;
do
{
i=i+3;
if( ( i % 2 )==0)
{
i=i-2;
continue;
}
if( ( i%5 )==0)
break;
printf(''%d'',i);
}
while (i !=100 );
printf('' %d %d \n'',-i);
}
Ejercicios break/continue
|
|
|