Estructuras de Control.

Slides:



Advertisements
Presentaciones similares
CICLOS EN C.
Advertisements

Tema 4: Sentencias de control
Capítulo 1 “Elementos de Programación”
Estructuras de Control.
Símbolos de Programación Estructurada
Estructuras de Decisión en Visual Basic 6.0
Tema – 5 Construcciones condicionales Introducción En un programa es usual ejecutar unas instrucciones u otras en función de unas condiciones especificadas.
Estatutos en Matlab 3.1 De entrada y salida estándar. 3.2 De control o selección if. 3.3 De ciclos: for, while. 3.4 Otros estatutos.
Entrada y Salida en C++, Estructuras de Control Prof. Manuel B. Sánchez.
Computación I :: Prof. Yeniffer Peña Introducción al C Presentación Computación I.
Funciones, expresiones y control en Alice
Unidad V: Estatutos en Basic De control o selección if. De ciclos: Do, for, while. Otros estatutos. Solución de problemas aplicando estatutos de control.
Ciclos disponibles en Visual Basic Nury Capera Tovar.
O. Ciclo Para (For) La instrucción Para ejecuta una secuencia de instrucciones (una o varias), una determinada cantidad de veces. Sintaxis: Para  Hasta.
PROGRAMACIÓN I CENTRO DE ESTUDIOS INTEGRADOS EL MARISCAL - CEIM Ing. Luisa Fernanda Arenas Castañeda Feb 6 de 2016.
SERIES Y SUMATORIAS.
Estructuras de Control en Visual Basic.net
Operadores Java es un lenguaje rico en operadores, que son casi idénticos a los de C/C++.
Actividad #2 Los algoritmos
TECNOLOGICO DE ESTUDIOS SUPERIORES DE COACALCO
Introducción al lenguaje C Instrucción IF – ELSE y el bucle WHILE
Estructuras Repetitivas Estructuras Repetitivas
Programacion I Curso: 5 I (TT)
Introduction a la Programacion
ROBERTO PINEDA FLORES. ALEXIS JULIAN VELAZQUEZ NAVA.
Olimpiadas Chilenas de Informática - Formación
Olimpiadas Chilenas de Informática - Formación
Anexo Chame-San Carlos
Conceptos básicos de programación
Estructuras de Control en Visual Basic.net
Estructuras de Datos Recursividad.
Programación I MC Beatriz Beltrán Martínez
Clase 7: Abreviaturas Valeria Herskovic –
ESTRUCTURAS DE CONTROL REPETITIVAS
Instrucciones y excepciones
Bucles y estructuras de decisión
Decisiones y orden. Estructura if.
2.2 Procedimientos recursivos
LENGUAJE DE PROGRAMACION III Estructuras Estáticas de Datos
Programación Orientada a Objetos
Estructuras de control en PHP
Programación en Java..
Fundamentos de Programación. Estructuras de Control
Curso de iniciación al trabajo con MatLab 7.0
ESTRUCTURAS DE CONTROL EN VISUAL BASIC.NET Prof.: Rafael Mourglia.
Estructuras de control Resolución de problemas y algoritmos
Fundamentos de programación
Tema 6 Clasificación de algoritmos
LENGUAJE C.
Estructuras Repetitivas
Tema 9. Estructuras de repetición. Clase 2
Fundamentos de programación
Metodología de la Programación
ESTRUCTURAS DE DATOS Docente: Ing. Yesika Medina
Programación I MC José Andrés Vázquez Flores
Bucles y estructuras de decisión
Fundamentos de Informática Especialidad de Electrónica –
Introducción a la Estadística Informática
FUNCIONES Y PROCEDIMIENTOS
CICLOS EN JAVA FOR, WHILE, DO WHILE Un ciclo en Java o bucle en Java (como prefieras llamarlo) permite repetir una o varias instrucciones cuantas veces.
Estructuras de Control
MC Beatriz Beltrán Martínez Verano 2018
Recursividad 1 Análisis de algoritmos. Matrushka La Matrushka es una artesanía tradicional rusa. Es una muñeca de madera que contiene otra muñeca más.
Informática Ingeniería en Electrónica y Automática Industrial
Sentencias de control JAVA.
Programación Estructurada
DIAGRAMAS DE FLUJO Y PSEUDOCÓDIGO
UNIDAD VII FUNCIONES (SUBPROCESOS)
UNIDAD V ANIDAMIENTO DE CICLOS
Macros EN EXCEL.
Transcripción de la presentación:

Estructuras de Control. Semana 3 Estructuras de Control.

En C las sentencias se pueden clasificar en: simples estructuradas Simples Asignación Llamada a función

Sentencias Estructuradas Todas las estructuras de control Las sentencias estructuradas contienen sentencias simples u otras sentencias estructuradas. Una sentencia estructurada se puede utilizar en cualquier lugar donde esta permitida una sentencia simple. De aquí en adelante se usara el termino sentencia para las aquellas estructuradas y simples.

Estruc. de Ctrl.: Secuencia En C todas las sentencias que se escriben entre { y }, se ejecutan en forma secuencial. Una instrucción no inicia hasta que la anterior termine.

Estruc. de Ctrl.: Secuencia #include <stdio.h> Void main(void) { acción 1; acción 2; …. acción n; } Diagrama de Flujo acción 1 acción n acción 2

Ejemplos Desarrollar un programa que haga la conversión de pesos a dólares. Desarrollar un programa que calcule el área y superficie de un circulo, dado como entrada el radio de este. Desarrollar un programa que calcule la superficie y volumen de un cilindro, dado la altura y el radio de este.

Estruc. de Ctrl.: Selección La mayoría de los procedimientos que podemos diseñar para resolver problemas incluyen la elección de uno entre los casos posibles en función del valor particular de alguno de los datos. Las sentencias de control en C: condicional simple If – If/else condicional múltiple switch

Estruc. de Ctrl.: Selección Si la condición es verdadera se ejecuta la sentencia Diagrama de Flujo if (condición) acción; if (condición) { acción 1; …. acción n; } condición true acción false

Ejemplo Desarrollar un programa que reciba un número entero como entrada e indique si este es par.

Estruc. de Ctrl.: Selección if (condición) acción 1; else acción 2; Si la condición es verdadera se ejecuta la acción 1; En caso contrario se ejecuta la acción 2. Es preferible usar { y } para dejar el código más claro. if(condición) { acción1; … acciónn; } else{ acciónr acciónm; Diagrama de Flujo condición false true acción 2 acción 1

If anidados. Diagrama de Flujo condición condición condición acción 4 if (condición 1) if (condición 2) acción 1; else acción 2; if (condición 3) acción 3; acción 4; condición false true condición condición false true false true acción 4 acción 3 acción 2 acción 1

switch Los “If anidados” plantean la problemática de bifurcación múltiple. Puede llegar a ser difícil de leer. C proporciona una estructura alternativa más legible para aquellos casos en los que la bifurcación múltiple se realiza mediante comparación de datos sencillos ordinales denominada switch-case.

Switch-Case switch (expresión) { case valor1: case valor2: ... sentencias break; case valor2: ... default: } Diagrama de Flujo alternativa 1 2 n acción 1 acción 2 acción n El fragmento etiquetado con default es opcional.

Switch-Case #include <stdio.h> int main(void) { int opcion; printf ("1) Saluda\n"); printf ("2) Despídete\n"); scanf ("%d", &opcion); switch (opcion) { case 1: printf ("Hola\n"); break; case 2: printf ("Adiós\n"); default: printf ("Opción no válida\n"); } return 0;

Ejemplo Implementar un menú Selección de equipo de fútbol Muestre mejor jugador del equipo

Estruc. de Ctrl.: Repetitivas Las estructuras de control repetitivas, como su nombre lo indica, repiten la ejecución de un grupo de instrucciones una determinada cantidad de veces. En C las estructuras de control de este tipo son: while do - while for

While. Mientras la condición sea verdadera la(s) sentencia(s) se repite(n). Dentro de las sentencias del cuerpo del while, se debe modificar alguna variable que se encuentre en la condición, sino se puede producir un ciclo infinito.

While. Diagrama de Flujo condición acción WHILE while (condición) acción; while (condición) { Acción 1; Acción 2; … Acción n; } Diagrama de Flujo condición false true acción

While El siguiente ejemplo produce un ciclo infinito Int variable = 1; while ( variable != 10 ) printf ( “%d”, variable ); Este otro ejemplo no { variable++ }

Mostrar todas las potencias de 2 menores a 20000. Ejemplo Mostrar todas las potencias de 2 menores a 20000. El resultado debe estar formateado de la siguiente manera: 5 números por línea Los números separados por comas La salida debe lucir así: 1, 2, 4, 8, 16, 32, 64, 128, 256, 512, 1024, 2048, 4096, 8192, 16384

Do while. do { sentencias; } while (condición); Variación del while, se ejecuta(n) una vez la(s) accion(es), luego se evalúa y se sigue ejecutando mientras la condición sea verdadera la(s) sentencia(s) se repite(n) Diagrama de Flujo acción true do { sentencias; } while (condición); condición false

Ejemplo Mostrar los primeros 10 números de la secuencia de Fibonacci La secuencia de Fibonacci comienza con dos números: 1, 1 Cada numero que sigue esta formado por la suma de los dos números anteriores a él La secuencia queda de la siguiente manera: 1, 1, 2, 3, 5, 8, 13, 21, 34, 55 Matemáticamente se puede expresar de la siguiente manera

For El for se usa, fundamentalmente, cuando se conocen los límites del bucle... Su parámetro de inicialización Su criterio de terminación Su instrucción de incremento.

La forma general del bucle for puede expresarse así. for (inicialización; condicion; incremento) sentencias Diagrama de Flujo acción Variable:= inicio,fin, 1

For Inicialización es la sentencia que inicializa la iteración (se ejecuta una vez al iniciar). Condición es una sentencia que determina cuando se termina el for. Esta expresión se evalúa al principio de cada iteración. Cuando la expresión se evalúa a false finaliza.

For Incremento es una expresión que se invoca en cada interacción del bucle. Cualquiera (o todos) de estos componentes puden ser una sentencia vacía (solo se identifica por el punto y coma).

Ejemplo Un trozo de código que calcula int resultado = 0; for ( i = 0; i <= 100; i ++ ) resultado += i; Lo mismo pero al revés for ( i = 100; i >= 0; i -- )

Ejemplo Desarrolle un programa que muestre todos los años bisiestos del siglo XXI. La regla para los años bisiestos según el calendario gregoriano es: Un año es bisiesto si es divisible por 4, excepto el último de cada siglo (aquellos divisibles por 100), que para ser bisiestos, también deben ser divisibles por 400. Es decir los años que sean divisibles por 4 serán bisiestos; aunque no serán bisiestos si son divisibles entre 100 (como los años 1500, 1700, 1800, 1900 y 2100) a no ser que sean divisibles por 400 (como los años 1600, 2000 ó 2400). En 400 años debe haber 97 años bisiestos, de esa manera el año del calendario gregoriano se mantiene muy parecido al año solar. Así el año gregoriano dura 365 días +1/4 -1/100 +1/400 = 365,2425 días (más que el año trópico que dura 365,2422 días).

Ejemplo Desarrolle un programa que escriba una tabla de dos columnas para la conversión entre las temperaturas en grados Fahrenheit, comprendidas entre 0 y 300, según incrementos de 1, y su equivalente en grados centígrados. La conversión esta dada por la siguiente formula Donde C esta en Centígrados y F en Fahrenheit

Sentencias para alterar el flujo iterativo La sentencia break está disponible en C. Con ella se puede, abortar al instante la ejecución de un bucle cualquiera (while, do-while o for).

Sentencias para alterar el flujo iterativo Otra sentencia de C que puede resultar útil es continue. Esta sentencia finaliza la iteración actual, pero no aborta la ejecución del bucle. Por ejemplo, cuando en un bucle while se ejecuta continue, la siguiente sentencia a ejecutar es la condición del bucle; si ésta se cumple, se ejecutará una nueva iteración del bucle.

FIN Cada vez más cerca …