Ciclos (Loops, Repeticiones) Permiten ejecutar una secuencia de sentencias mas de una vez. Hay 2 tipos de loops:  WHILE repite la acción un número indefinido.

Slides:



Advertisements
Presentaciones similares
Programación de Computadores
Advertisements

Sesión 3 Estructuras Repetitivas
Pippy (Python para niños)‏ 1.
Clase 2 Tipos de datos Asignación de valores Estructura IF Ejercicios
Estructuras de Repetición Algoritmos
Programación Estructurada
Iteración La iteración permite modelar problemas en los cuales una secuencia de instrucciones debe ejecutarse varias veces. La cantidad de iteraciones.
Seminario de Actualización - Excel Avanzado y Macros
INFORMÁTICA PROGRAMACIÓN.
Concepto de programa. Directorio Concepto de programa. Analisis del problema. Resolucion del problema. Desarroollo de un programa. Partes constitutivas.
ALGORÍTMICA Dpto. Ingeniería de Sistemas y Automática
3. INTRODUCCIÓN A LA PROGRAMACIÓN
DSUPE Pseudocódigo.
Estructuras de Repetición
PARADIGMA Es un esquema de pensamiento que nos lleva a concebir las cosas de una manera determinada. el término paradigma puede indicar el concepto de esquema.
Arreglos (vectores, matrices, ….)
MÓDULO DE PROCEDIMIENTOS Los módulos también pueden contener subrutinas y funciones → MÓDULO DE PROCEDIMIENTOS  PROCEDIMIENTOS → son compilados como parte.
1 Procedimientos Es un conjunto de sentencias incluidas entre las declaraciones Sub o Function y End Sub/Function VB utiliza varios tipos de procedimientos:
Fundamentos de Programación
ESTRUCTURAS DE CONTROL
READ (*, *) WRITE(*; *) Formato libre Format → se utiliza para especificar la forma en que las variables son impresas o leídas en un programa. WRITE(*,
Fundamentos de Programación
Programación de Computadores
Academia de Informática
Brazos Bloque IF Permite que se ejecuten una serie de tareas si y sólo si una expresión lógica es verdadera. IF(logical_exp) then sentencia1 sentencia2.
Arrays (introducción)
LÓGICA - DECISIONES Los valores lógicos: constantes, variables y expresiones lógicas, permiten controlar la ejecución de las sentencias de un programa.
Diseño de diagramación Diagrama: es una representación gráfica del flujo información de y el proceso de ejecución del programa. Plateo del problema en.
Estructuras de Iteracion (Repetitivas ) while , for,, do-while
Programación en Matlab
ESTRUCTURAS DO-WHILE Y FOR.
Capítulo 1 “Elementos de Programación”
Conversión cadena a número
Algoritmos ¿Que es un algoritmo?
Capítulo 2 – Estructuras de Control
WHILE Estructuras Repetitivas
Resolución de Problemas y Algoritmos Uso de iteración con secuencias
Sesión 5 Sentencias de Selección y repetición Prof:Eridan Otto Programación de Computadores Lenguaje Pascal.
Informática Tema 5 - Estructuras de Control Estructuras de Repetición.
COMPUTACION 2009 C lase 4 Programa PASCAL SENTENCIAS DATOS Expresiones Tipos Declaración de variables Declaración de variables Asignación Entrada/Salida.
Informática Ingeniería en Electrónica y Automática Industrial
1Hacer in programa que lea un número desconocido de datos reales de un disco y detecte el final de los datos en el archivo 2Definir entradas y salidas.
Teoría – Alejandro Gonzalez
EXPRESIONES Y SENTENCIAS
Estructuras de Control.
2008 Escuela de Informática y Telecomunicaciones, DuocUC Escuela de Informática y Telecomunicaciones Clase 7: Control del flujo en BASH Nombre unidad de.
Algoritmo Ing. Maria Rosana Heredia
Estructuras de Repetición (Hacer-Mientras)
Sentencias de repetición
Estructuras de control Resolución de problemas y algoritmos.
Inicialización de arreglos de 2 variables INTEGER, DIMENSIÓN (4, 3) : : ini DO i=1, 4 DO j= 1,3 ini(i, j) = j END DO i=1123 i=2123 i=3123 i=4123 j=1j=2j=3.
Estructuras de Repetición (Hacer-Mientras)
COMPUTO III Ing. Jimmy Ojeda Arnica.
Términos algoritmo diseñar algoritmo implementar algoritmo
Sesión 13: Python (4) – Estructura Repetición. 2009/1 Circuitos Digitales III 2010/1 Circuitos Digitales III 2010/1 Circuitos Digitales III 2010/1 Informática.
PRINCIPIOS DE PROGRAMACIÓN
Elaboración de algoritmos usando lógica de programación
Presente un cuestionario con los aspectos mas importantes sobre los
“variables , sentencia if y bucles”
ESTRUCTURAS REPETITIVAS
Prueba de escritorio Computación y Sistemas de Información.
Estructuras de Decisión
2011/1 - CLASE 12. AGENDA 1 Introducción 2 Sentencia while 3 Sentencia for 14 Sentencia do-while 5 Instrucciones Especiales 6 Ciclos anidados.
CICLOS EN C – PARTE 3.
PROGRAMACIÓN Grupo de Modelamiento de Sistemas
MC. J. D. Pope S. ITD Unidad II. Introducción a la programación 2.1 Ejemplo de programas 2.2 Identificadores, constantes y variables 2.3 Tipos de datos:
ESTRUCTURAS SELECTIVAS Elaborado por; Ing. Alberto Pérez.
Entrada y Salida en C++, Estructuras de Control Prof. Manuel B. Sánchez.
Ciclos condicionales y exactos Estructura de control de ciclos
Transcripción de la presentación:

Ciclos (Loops, Repeticiones) Permiten ejecutar una secuencia de sentencias mas de una vez. Hay 2 tipos de loops:  WHILE repite la acción un número indefinido de veces hasta que se cumpla una condición determinada  ITERACTIVE repite la acción un número indefinido de veces conocido antes que las repeticiones comiencen WHILE Repite un bloque de sentencias hasta que se cumple una determinada condición. DO Sentencia 1 ……… IF(exp_logica) EXIT …….. END DO

Sentencia 1 Sentencia i Sentencia j Sentencia l Exp. lógica falso EXIT El bloque de sentencias entre DO y END DO se ejecuta hasta que la expresión lógica resulta verdad y sale del ciclo y ejecuta la sentencia inmediatamente siguiente al END DO. Cada ciclo while debe tener un solo EXIT

1 Problema Calcular la media y la desviación estándar de una serie de la cual desconocemos el número de datos, pero sabemos que el fin de archivo viene marcado por un número negativo. 2 Entradas y Salidas Entrada: número desconocido de datos reales. Salida: media, desviación estándar número de datos. Diseño del algoritmo Leer, contar y acumular los datos de entrada de dos formas x y x 2 Imprimir los resultados Calcular la media y la desviación estándar de unas serie de T (K). El fin de archivo está indicado con un valor negativo.

comenzar Aplico ec 1 y ec 2 imprimo fin si Leo T T<o N =N+1 sT= sT+T sT2=sT2+ T 2 no

4 En lenguaje FORTRAN PROGRAM media_dstand ! Propósito: Calcular la media y la desviación estándar de una serie de datos positivos que finaliza con un valor negativo ! IMPLICIT NONE ! Diccionario INTEGER : : n=0 ! Número de datos REAL : : T ! Datos REAL : : sT = 0 ! Suma los datos REAL : : sT2 = 0 ! Suma los datos elevados al cuadrado REAL : : Tm =0 ! Valor medio REAL : : DS=0 ! desviación estándar ! DO ! Ciclo leo el próximo numero WRITE(*,*) “Entre el dato” READ(*,*) T WRITE(*,*) “ el dato es:”, T ! Pregunto si es negativo para saber si es el ultimo IF(T<0.) EXIT ! Acumulo los valores n=n+1 sT = sT+ T sT2= sT2 + T**2 END DO

! Calculo la media y la desviación estándar Tm=sT/real(n) DS=sqrt( (real(n)* sT2- sT**2)/(real(n)*real(n-1))) ! Write (*,*) “la media de la serie es:”, Tm Write (*,*) “la desviación estándar de la serie es:”, DS Write (*,*) “el número de datos de la serie es:”, n ! END PROGRAM media_dstand 5 Verificación (prueba de escritorio) Si realizamos las cuentas para 3 valores 3,4 y 5 X m = 4S = 1 Introducir estos valores en la computadora y compara con los calculados previamente

DO WHILE DO while ( exp_logica) Sentencia 1 Sentencia 2 …… Sentencia n END DO Si la sentencia es lógica es verdad se ejecutan las sentencias 1 a n. Si es falsa se ejecuta la primer sentencia debajo del END DO La principal diferencia con el ciclo WHILE es que la salida puede estar en cualquier lugar del ciclo. LOOP ITERATIVO El DO ITERATIVO ejecute un bloque de sentencias un numero especificado de veces. DO indice= icomienzo, ifin, incremento Sentencia 1 Sentencia 2 CUERPO …… Sentencia n END DO

Índice→ es una variable entera usada como contador Icomienzo, ifin e incremento → parámetros enteros usados por el contador. Incremento es opcional y si no se lo pone se supone que es 1  NO SE PUEDE MODIFICAR EL INDICE DENTRO DEL CUERPO DEL DO  Se pueden realizar DO con contadores descendentes Ej DO i=10, 1, -1 …………. END DO  Es posible incluir IF dentro del cuerpo del DO Ej DO i=1, 10, 1 ………… IF(ipo>=5) EXIT …………. END DO WRITE (*,*) i  En muchas computadoras cuando el DO se completa el valor del índice queda indefinido. Sin embargo en otras adquiere el ifin + 1

CYCLE y EXIT Si CYCLE se ejecuta en el cuerpo de un DO la ejecución de esa iteración se interrumpe y regresa a la principio de cuerpo del DO con el valor siguiente del índice. Ej PROGRAM ver_CYCLE DO i=1,5 IF(i==3) CYCLE WRITE(*,*) i END DO WRITE(*,*) “Fin del ciclo” END PROGRAM ver_CYCLE La impresión es la siguiente: Fin del ciclo

Si EXIT se ejecuta en el cuerpo de un DO, la ejecución de esa iteración se interrumpe y ejecuta la primer sentencia despues del END DO. Ej PROGRAM ver_EXIT DO i=1,5 IF(i==3) EXIT WRITE(*,*) i END DO WRITE(*,*) “Fin del ciclo” END PROGRAM ver_EXIT La impresión es la siguiente: 1 2 Fin del ciclo

[ nombre:] DO sentencia1 sentencia2 … IF(logical_exp1) CYCLE [nombre] sentencia3 sentencia4 … IF(logical_exp2) EXIT [nombre] sentencia5 sentencia6 … END DO [nombre] Nombre de los Ciclos

Ciclos anidados PROGRAM DO_anidado INTEGER : : i,j, producto DO i= 1,3 DO j=1,3 producto=i*j WRITE(*,*) i, ”*”, j, “=“, producto END DO END PROGRAM DO_anidado La impresión es la siguiente: 1*1=1 1*2=2 1*3=3 2*1=2 2*2=4 2*3=6 3*1=3 3*2=6 3*3=9

DO E IF ANIDADOS Es posible anidar un DO dentro de un bloque IF o viceversa. PERO si el DO esta contenido en el IF debe estar totalmente contenido enteramente en una opción del IF Externo: IF(a<b) THEN …… Interno: DO I=1,3 ………. ELSE END DO Interno ……. END IF Externo Externo: IF(a<b) THEN …… Interno: DO I=1,3 ………. END DO Interno ELSE ……. END IF Externo ERROR CORRECTO

ASIGNACIONES CHARACTER Una expresión character puede ser asignada a una variable character Con una sentencia de asignación. Si la expresión es mas corta que la longitud de la variable character a la que fue asignada entonces la variable será completada con espacios en blanco (b) CHARACTER (len=3) long long = ‘p’ La variable long almacenará fbb character entonces se descartara el excedente. Cuando la expresión es mas larga que la longitud asignada a la variable character entonces se descartara el excedente. CHARACTER (len=3) long2 long2 = ‘pepe’ La variable long2 almacenara pep

“SUBTEXTOS” Para seleccionar una porción de una variable character y tratar la porción como si fuera independiente. Si var tiene una longitud de 6 caracteres ‘abcdef’ podemos utilizar solo un parte var(2:4), hacemos referencia las posiciones 2 a 4 de var es decir ‘bcd’. ¿Cuál será el contenido de las variables a b c cuando se ejecute el siguiente programa?  Línea 3: se le asignan a a=‘ABCDEFGHIJ’ y solamente tiene 8 lugares por lo tanto a=‘ABCDEFGH’  Línea 4: b=‘ ’  Línea 5: c=a(5:7) ⇨ c= ‘EFGbbbbb’  Línea 6: b(7:8)=a(2:6) ⇨ b=‘123456BC'

OPERADOR DE CONCATENACIÓN (//) Es posible combinar dos o mas textos (concatenación) esto se realiza usando / / ( doble barra co un espacio entre ambas) C= ‘ABC45FGH’