ciclos en c 1

9
CICLOS EN C

Upload: gio

Post on 05-Jan-2016

4 views

Category:

Documents


0 download

DESCRIPTION

computacion 1 ingenieria

TRANSCRIPT

Page 1: CICLOS EN C 1

7/16/2019 CICLOS EN C 1

http://slidepdf.com/reader/full/ciclos-en-c-1 1/9

CICLOS EN C

Page 2: CICLOS EN C 1

7/16/2019 CICLOS EN C 1

http://slidepdf.com/reader/full/ciclos-en-c-1 2/9

BUCLES EN CUn ciclo (bucle) es una estructuraque permite la repetición de una omas instrucciones un determinadonumero

de veces.

condición

cuerpo

Expresión lógica quecontrola la secuencia derepetición. Normalmente, se

evalúa antes de laejecución del cuerpo delbucle.

Conjunto de instrucciones

(asociadas al problema) quese ejecutan dentro del bucle:• Estructuras condicionales.• Instrucciones I/O.• Otros bucles.• Instrucciones de asignación.• Funciones.

Page 3: CICLOS EN C 1

7/16/2019 CICLOS EN C 1

http://slidepdf.com/reader/full/ciclos-en-c-1 3/9

OPERADORES DE INCREMENTO YDECREMENTO

C ofrece operadores de incremento (++) y decremento que soporta sintaxisabreviada (--).Operación sintaxis Significado Comentario

Postincremento i++ i = i + 1 En una operación de asignación estaoperación hace primero se realice laasignación y luego se incremente lavariable en 1.

Preincremento ++i i = i + 1 En una operación de asignación estaoperación hace primero se realice lael incremento de la variable en 1 yluego se realice la asignación.

Postdecremento i-- i = i - 1 En una operación de asignación estaoperación hace primero se realice laasignación y luego se decremente en

1 la variable.predecremento --i i = i - 1 En una operación de asignación esta

operación hace primero se realice ladisminución de la variable en 1 y luegose realice la asignación.

// Supóngase que inicialmente i = 3k=i++; // k = 3, i = 4k=++i; // k = 5, i = 5k=i--; // k = 5, i = 4k=--i; // k = 3, i = 3

Page 4: CICLOS EN C 1

7/16/2019 CICLOS EN C 1

http://slidepdf.com/reader/full/ciclos-en-c-1 4/9

CICLO WHILE EN C

Funcionamiento:1. Se evalúa la condición del bucle.2. Si la condición del bucle es

verdadera (distinto de 0):a. Se ejecutan las sentencias que

se hallan dentro del cuerpo delbucle.

b. Vuelve el control al paso 1.3. Si la condición del bucle es falsa, el

control se transfiere a la secuencia4. siguiente al bucle.

 MIENTRAS(expresión_logica)HAGA secuencia

FIN_MIENTRAS

 while (expresion_logica) {secuencia}

Sintaxis:

Page 5: CICLOS EN C 1

7/16/2019 CICLOS EN C 1

http://slidepdf.com/reader/full/ciclos-en-c-1 5/9

CICLO WHILE EN C

Ejemplo 1 (Uso sencillo de un buclewhile):

Realizar un programa que imprima losnúmeros desde el 1 hasta el 5.

 while (expresion_logica) {secuencia}

Page 6: CICLOS EN C 1

7/16/2019 CICLOS EN C 1

http://slidepdf.com/reader/full/ciclos-en-c-1 6/9

CICLO WHILE EN C

Ejemplo 2 (Ejemplo anterior modificadousando un operador depreincremento):

Realizar un programa que imprima losnúmeros desde el 1 hasta el 5.

 while (expresion_logica) {secuencia

}

Page 7: CICLOS EN C 1

7/16/2019 CICLOS EN C 1

http://slidepdf.com/reader/full/ciclos-en-c-1 7/9

CICLO WHILE EN C

Algunas anotaciones sobre los ciclos while.• Cuando no se usan llaves el cuerpo del buclesolo tendrá una sola instrucción. Por claridad esrecomendable usar llaves así el cuerpo del ciclo

tenga solo una instrucción.int i = 0, N = 10; while (i++ < N)

 printf(“Hola mundo \n”); printf(“Adios mundo cruel \n”);

int i = 0, N = 10;

 while (i++ < N) { printf(“Hola mundo \n”);

} printf(“Adios mundo cruel \n”);

=

Page 8: CICLOS EN C 1

7/16/2019 CICLOS EN C 1

http://slidepdf.com/reader/full/ciclos-en-c-1 8/9

CICLO WHILE EN C

 while (1) { printf(“fuck!

\n”);}

 while (4>3) { printf(“fuck!

\n”);}

• Un bucle while se puede ejecutar siempre si su condición nunca se hace falsa (falta deactualización de la variable de control).

 while (i > 0) { printf(“fuck! \n”);

}

Page 9: CICLOS EN C 1

7/16/2019 CICLOS EN C 1

http://slidepdf.com/reader/full/ciclos-en-c-1 9/9

RUPTURA DE CICLOS WHILE

La sentencia break es comúnmente para realizar la terminación anormal de un ciclo.

 while (condicion) {if(condicion2) { break;

}}

int clave = -9;int entrada; while (scanf(“%d”,&entrada)) {

if(entrada != clave) printf(“%d”,entrada);

else

 break;}

El uso de un break en un bucle no es muy recomendable ya que puede hacer difícil lacomprensión del comportamiento del programa.