La descarga está en progreso. Por favor, espere

La descarga está en progreso. Por favor, espere

UNIVERSIDAD PERUANA DE LAS AMERICAS INGENIERIA DE COMPUTACION Y SISTEMAS PROGRAMACION I ING. PEDRO BENITES TOLEDO Programación I Capitulo IV : Estructuras.

Presentaciones similares


Presentación del tema: "UNIVERSIDAD PERUANA DE LAS AMERICAS INGENIERIA DE COMPUTACION Y SISTEMAS PROGRAMACION I ING. PEDRO BENITES TOLEDO Programación I Capitulo IV : Estructuras."— Transcripción de la presentación:

1 UNIVERSIDAD PERUANA DE LAS AMERICAS INGENIERIA DE COMPUTACION Y SISTEMAS PROGRAMACION I ING. PEDRO BENITES TOLEDO Programación I Capitulo IV : Estructuras de Control. “das Ding an sich” “La cosa en sí y la cosa para mí” “La dos formas: tiempo y espacio” (Emmanuel Kant, 1724-1804 )

2 UNIVERSIDAD PERUANA DE LAS AMERICAS INGENIERIA DE COMPUTACION Y SISTEMAS PROGRAMACION I ING. PEDRO BENITES TOLEDO Introduccion Composición secuencial de sentencias: No permite resolver problemas que exijan una toma de decisión. No permite la ejecución de un conjunto de instrucciones repetidas veces. Accion 1Accion 3Accion 2

3 UNIVERSIDAD PERUANA DE LAS AMERICAS INGENIERIA DE COMPUTACION Y SISTEMAS PROGRAMACION I ING. PEDRO BENITES TOLEDO Introduccion Herramientas que permiten alterar el orden secuencial de un conjunto de instrucciones. Estructuras selectivas: Estructura selectiva. Estructuras repetitivas: Ejecutar unn conjunto de instrucciones varias veces. Expresiones lógicas o Booleanas: Expresiones con dos posibles valores verdadero o falso

4 UNIVERSIDAD PERUANA DE LAS AMERICAS INGENIERIA DE COMPUTACION Y SISTEMAS PROGRAMACION I ING. PEDRO BENITES TOLEDO Expresiones Lógicas Operadores logicos: Permite combinar relaciones de comparacion. Conjuncion: AND, && Disyuncion: OR, || Negacion: NOT, ! Ejemplo: (a > 30) && (b==20) Los operandos de las operadores logicos pueden ser expresiones cuya evaluacion tenga un resultado logico

5 UNIVERSIDAD PERUANA DE LAS AMERICAS INGENIERIA DE COMPUTACION Y SISTEMAS PROGRAMACION I ING. PEDRO BENITES TOLEDO Expresiones Lógicas Expresion Logica: 1. !((letra=='Q') || (letra == 'Z')) && ( X>=6 ) 2. (largo==ancho) && !(X > 5) 3. X && (altura <= 5) ¿Por qué los paréntesis?

6 UNIVERSIDAD PERUANA DE LAS AMERICAS INGENIERIA DE COMPUTACION Y SISTEMAS PROGRAMACION I ING. PEDRO BENITES TOLEDO Expresiones Lógicas Orden de precedencia: Si queremos cambiar el orden de precedencia usamos los parentesis + - NOT *,/ +,- relacionales igualdad and, or

7 UNIVERSIDAD PERUANA DE LAS AMERICAS INGENIERIA DE COMPUTACION Y SISTEMAS PROGRAMACION I ING. PEDRO BENITES TOLEDO Expresiones Lógicas Algunas equivalencias: !(a==b) => LEY DE MORGAN !((a==b)||(a==c))=> !((a==b)&&(a==c))=>

8 UNIVERSIDAD PERUANA DE LAS AMERICAS INGENIERIA DE COMPUTACION Y SISTEMAS PROGRAMACION I ING. PEDRO BENITES TOLEDO Estructuras Selectivas 3 tipos de sentencias selectivas: Sentencias de seleccion simple Sentencias de seleccion binaria Sentencias de seleccion multiple

9 UNIVERSIDAD PERUANA DE LAS AMERICAS INGENIERIA DE COMPUTACION Y SISTEMAS PROGRAMACION I ING. PEDRO BENITES TOLEDO Estructuras Selectivas Sentencias de seleccion simple: Ejemplo: if ( numero % 2 == 0) { printf(“Numero par”); }

10 UNIVERSIDAD PERUANA DE LAS AMERICAS INGENIERIA DE COMPUTACION Y SISTEMAS PROGRAMACION I ING. PEDRO BENITES TOLEDO Estructuras Selectivas Sentencias de seleccion simple: Diagrama de flujo: Inicio Fin Leer n n mod 2 = 0 Escribir Par No Si

11 UNIVERSIDAD PERUANA DE LAS AMERICAS INGENIERIA DE COMPUTACION Y SISTEMAS PROGRAMACION I ING. PEDRO BENITES TOLEDO Estructuras Selectivas Sentencias de seleccion binaria: Ejemplo: if ( numero % 2 == 0) { printf(“Numero par”); }else{ printf(“Numero impar”); }

12 UNIVERSIDAD PERUANA DE LAS AMERICAS INGENIERIA DE COMPUTACION Y SISTEMAS PROGRAMACION I ING. PEDRO BENITES TOLEDO Estructuras Selectivas Sentencias de seleccion binaria: Diagrama de flujo: Inicio Fin Leer n n mod 2 = 0 No Si Escribir Par

13 UNIVERSIDAD PERUANA DE LAS AMERICAS INGENIERIA DE COMPUTACION Y SISTEMAS PROGRAMACION I ING. PEDRO BENITES TOLEDO Estructuras Selectivas Sentencias de seleccion multiple: Ejemplo: #include int main(void){ char op; int a=4,b=2,c=0; scanf("%s",&op); switch (op){ case '+': c=a+b; break; case '-': c=a-b; break; case '*': c=a*b; break; default : c=a/b; break; } printf("%d\n",c); }

14 UNIVERSIDAD PERUANA DE LAS AMERICAS INGENIERIA DE COMPUTACION Y SISTEMAS PROGRAMACION I ING. PEDRO BENITES TOLEDO Estructuras Repetitivas - Muy necesaria - Estructura repetitiva = bucle = lazo - Iteracción - Ejecuta un conjunto de operaciones un número determinado o indeterminado de veces. ¿Quién determina cuantas veces se ejecutan las instrucciones? Condición de control

15 UNIVERSIDAD PERUANA DE LAS AMERICAS INGENIERIA DE COMPUTACION Y SISTEMAS PROGRAMACION I ING. PEDRO BENITES TOLEDO Estructuras Repetitivas 1. Número indeterminado de veces a priori. Estructura mientras(while y do..while) - Condicion de control = expresión lógica - Las instrucciones del bucle se ejecutan : 0.....n veces - Si la condicion es VERDADERA se seguirá ejecutando el bucle. - Bucle controlado por un contador - Bucle controlado por una bandera o centinela.

16 UNIVERSIDAD PERUANA DE LAS AMERICAS INGENIERIA DE COMPUTACION Y SISTEMAS PROGRAMACION I ING. PEDRO BENITES TOLEDO Estructuras Repetitivas Bucle controlado por un contador: Ejemplo: i=1 //inicialización while(i<10) //evaluación {................... i++; //incremento } ¿Cuantas veces se ejecuta el bucle?

17 UNIVERSIDAD PERUANA DE LAS AMERICAS INGENIERIA DE COMPUTACION Y SISTEMAS PROGRAMACION I ING. PEDRO BENITES TOLEDO Estructuras Repetitivas Bucle controlado por una bandera: Ejemplo: flag=1 //bandera while(flag == 1) //evaluación {................... if (condicion) //actualización flag=0; } ¿Cuantas veces se ejecuta el bucle?

18 UNIVERSIDAD PERUANA DE LAS AMERICAS INGENIERIA DE COMPUTACION Y SISTEMAS PROGRAMACION I ING. PEDRO BENITES TOLEDO Estructuras Repetitivas do.. while: Ejemplo: do{ printf("Ingrese un entero:"); scanf("%d",&n); printf("Desea Continuar(Y/N):"); scanf("%s",&rpt); }while(rpt=='Y');

19 UNIVERSIDAD PERUANA DE LAS AMERICAS INGENIERIA DE COMPUTACION Y SISTEMAS PROGRAMACION I ING. PEDRO BENITES TOLEDO Estructuras Repetitivas 2. Número determinado de veces a priori. Estructura para(for) - El bucle se ejecuta en su totalidad - usa una variable contadora - la variable se inicializa e incrementa en un valor determinado.

20 UNIVERSIDAD PERUANA DE LAS AMERICAS INGENIERIA DE COMPUTACION Y SISTEMAS PROGRAMACION I ING. PEDRO BENITES TOLEDO Calcular el factorial de un número #include int main(void){ int i,n,f=1; scanf("%d",&n); for(i=1;i<=n;i++){ f=f*i; } printf("%d\n",f); }

21 UNIVERSIDAD PERUANA DE LAS AMERICAS INGENIERIA DE COMPUTACION Y SISTEMAS PROGRAMACION I ING. PEDRO BENITES TOLEDO break y continue break -- sale del bucle o switch continue -- salta a la siguiente iteraccion del bucle Ejemplo: while ( value != 0) { scanf( "%d", &value ); if (value < 0) { printf("No valido\n"); break; //termina el bucle } if (value > 100) { printf("No valido\n"); continue; //salta una iteracion }

22 UNIVERSIDAD PERUANA DE LAS AMERICAS INGENIERIA DE COMPUTACION Y SISTEMAS PROGRAMACION I ING. PEDRO BENITES TOLEDO Problema: Escribir un triangulo de numeros, la altura se introduce como dato y debe ser menor que 10. Ejemplo altura 6: 1 121 12321 1234321 123454321 12345654321 Nota: Una iteraccion por linea de digitos Cada linea tiene 2 mitades: 123456.....54321

23 UNIVERSIDAD PERUANA DE LAS AMERICAS INGENIERIA DE COMPUTACION Y SISTEMAS PROGRAMACION I ING. PEDRO BENITES TOLEDO #include int main(void){ int mitad1,mitad2,fila,altura,espacio; printf("Ingrese altura:"); scanf("%d",&altura); for(fila=1;fila<=altura;fila++){ for(espacio=altura-fila;espacio>=1;espacio--) printf(" "); for(mitad1=1; mitad1 <= fila; mitad1++) printf("%d",mitad1); for(mitad2=fila-1;mitad2>=1;mitad2--) printf("%d",mitad2); printf("\n"); } printf("\n"); }


Descargar ppt "UNIVERSIDAD PERUANA DE LAS AMERICAS INGENIERIA DE COMPUTACION Y SISTEMAS PROGRAMACION I ING. PEDRO BENITES TOLEDO Programación I Capitulo IV : Estructuras."

Presentaciones similares


Anuncios Google