Lógica de programación 1

Documentos relacionados
Control de Flujo. Estructuras de Control! Experiencia Educativa de Algorítmica CONTROL DE FLUJO

Taller de Resolución de Problemas Computacionales

UNIDAD ACADÉMICA PROFESIONAL TIANGUISTENCO

Distinguir las diferentes estructuras de repetición utilizadas en problemas con bucles: mientras, repetir mientras, para.

Guía práctica de estudio 05: Diagramas de flujo

INSTITUTO POLITECNICO NACIONAL CENTRO DE ESTUDIOS CIENTIFICOS Y TECNOLOGICOS " GONZALO VAZQUEZ VELA "

Diseño Estructurado de Algoritmos

Estructuras de control

Estructuras Repetitivas

Tema 2 Conceptos básicos de programación. Fundamentos de Informática

Estructuras de Control

Capítulo 2 : ALGORITMOS

ESTRUCTURAS REPETITIVAS EN PHP

3.2. Programación estructurada. Principal. Modulo 1 Modulo 2 Modulo 3 Modulo 4. Modulo Modulo Modulo 3 1 Modulo 4 1 Modulo 4 2. Pág.

TECNICO SUPERIOR EN INFORMÁTICA EMPRESARIAL MÓDULO INTRUCCIONAL

La resolución de un problema

Algoritmos y solución de problemas. Fundamentos de Programación Otoño 2008 Mtro. Luis Eduardo Pérez Bernal

Constante: Una constante es un dato numérico o alfanumérico que no cambia durante la ejecución del programa.

[ GUÍA DIDÁCTICA: DESARROLLO DE ALGORITMOS PSEINT] 11 de julio de 2013

ESTRUCTURAS REPETITIVAS

ESTRUCTURAS ALGORITMICAS

Algoritmos. Medios de expresión de un algoritmo. Diagrama de flujo

Versión 1.0. Corina Flores Villarroel

PROGRAMACIÓN. UNIDAD II. ALGORITMO PROFA : HAU MOY

ALGORITMOS, ESTRUCTURAS Y PROGRAMACION

PROGRAMACIÓN ALGORITMOS y DIAGRAMAS

TEMA 4. ESTRUCTURAS DE CONTROL

Conocimientos previos

Profesor(a): M. A. Zeferino Galarza Hernández

la solución a una ecuación cuadrática solicitando al usuario los términos de dicha ecuación.

Resolución de problemas mediante algoritmos

Fundamentos de Programación Visual Basic

Oprime click para iniciar

Resolución de Problemas y Algoritmos Clase 6: Repetición (continuación)

LENGUAJE DE PROGRAMACION UNO.

Herramientas de Programación. M.C. Juan Carlos Olivares Rojas

CONTENIDO 1 Diagrama de flujo 2 Pseudocodigo 3 Diagrama estructurado (nassi-schneiderman)

Introducción a la Computación TFA

Guía práctica de estudio 03: Algoritmos

MANUAL DE PRÁCTICAS DEL TALLER DE PROGRAMACIÒN PRACTICA NO.6

Algoritmos. Diagramas de Flujo. Informática IV. L. S. C. Heriberto Sánchez Costeira

Estructuras de Decisión Simples y Dobles

Estructuras de control

Guía práctica de estudio 03: Algoritmos

Profesor(a): Ing. Miriam Cerón Brito

Introducción a la programación

Introducción a los Computadores Estructuras de control repetitivas en C

Laboratorio 02: Ejercicios de programación en C

SERVICIO NACIONAL DE APRENDIZAJE SENA

TEMA 2. CONCEPTOS BÁSICOS DE ALGORÍTMICA

Semana de las Matemáticas e Ingeniería. Desarrollo de algoritmos recursivos empleando la aplicación PseInt

UNIDAD V: ARR R EGL G OS O BIDI D MENS N IONALE L S

Tema: Entorno a C# y Estructuras Secuenciales.

Estructuras de Repetición (Repita para)

DESCRIPCIÓN ESPECÍFICA NÚCLEO: COMERCIO Y SERVICIOS SUBSECTOR: INFORMÁTICA

Estructuras Secuénciales

PRÁCTICA ALGORÍTMICA: EJERCICIOS PROPUESTOS

Programcaión Básica. Secuencias de Control y Repetición. Arturo Vega González.

3. TÉCNICAS DE DISEÑO

EJERCICIOS PRACTICOS CON EL USO DE PSeINT

Métodos para escribir algoritmos: Diagramas de Flujo y pseudocódigo

Tema: Uso del programa DFD

Ciclos. Recordando Estructuras de Control Básicas: SELECCIÓN (condición) SECUENCIAL

UNIVERSIDAD NACIONAL EXPERIMENTAL DE GUAYANA VICERRECTORADO ACADÉMICO COORDINACION DE PRE-GRADO PROYECTO DE CARRERA DE INGENIERIA INDUSTRIAL

Desde los programas más simples escritos en un lenguaje de programación suelen realizar tres tareas en forma secuencial.

LABORATORIO 3. PROGRAMACIÓN CON EL LENGUAJE JAVA

Algoritmos y estructuras de programación

Fundamentos de programación JAVA

Actividad de Evaluación Brandon Emmanuelle Cuevas Rangel GPO: 303 Carrera: Informática 3er Semestre Joel Rocha Barocio Cienega de Flores N.L.

Introducción a los Computadores (CNM-130) Estructuras algorítmicas selectivas

Tema 2 Conceptos básicos de programación. Fundamentos de Informática

fundamentos de programación (unidad 4) programación estructurada en Java

Inicio del programa. Entrada de datos. Proceso de datos. Salida de datos. Fin del programa

Nota:Simule el programa paso a paso en su cuaderno para entender la lógica de ejecución. Clase Lenguaje de programación 1 Ing Eddy ruiz Largaespada.

Informática. Algoritmos. Baños García Yesenia, Lic. Comp. Hernández Nájera Aracely, Lic. Comp. Enero 2012.

: Algorítmica y Estructura de Datos I

Nombre de la asignatura: Algoritmos y Lenguajes de programación.

Expresiones Aritméticas. Programación digital I Escuela de Sistemas Facultad de Ingeniería Gilberto Diaz

Introducción al tipo Vector Cómo guardar una colección de datos conceptualmente relacionados? - almacenar los 100 primeros números primos, - al

REFERENCIA DEL LENGUAJE

Introducción a la Informática Estructuras de control. Secuencial y selectiva

ARREGLOS EN. Nota: El autor.

UNIVERSIDAD DON BOSCO FACULTAD DE ESTUDIOS TECNOLÓGICOS ESCUELA DE COMPUTACION

Informática y Programación Escuela de Ingenierías Industriales y Civiles Curso 2010/2011

Estructuras de Repetición (Hacer-Mientras)

Fundamentos de Programación. Flujo de Control I: Estructuras selectivas

Un algoritmo es una serie de pasos organizados que describe el proceso que se debe seguir, para dar solución a un problema específico.

PSEUDOCÓDIGO. En este documento se recopilan los elementos conceptuales esenciales acerca PSEUDOCÓDIGO en la programación.

DIAGRAMA DE FLUJO DE DATOS

Fundamentos de programación

Introducción a la Programación Estructurada

1. Computadores y programación

FUNCIONES PHP: DECLARACIÓN Y LLAMADAS. PARÁMETROS, RETURN. EJERCICIOS EJEMPLOS RESUELTOS. (CU00827B)

Diseño Estructurado de Algoritmos

Estructuras de Control Contenido del Tema

Distinguir las diferentes estructuras de repetición utilizadas en problemas con ciclos: mientras, haga-mientras, repita-hasta, para.

Universidad Centroccidental Lisandro Alvarado. Decanato de Ciencias y Tecnología Departamento de Sistemas

Introducción a los Computadores (CNM-130) Estructuras selectivas en Matlab

Transcripción:

Lógica de programación 1 Universidad Nacional Autónoma de Nicaragua - León Facultad de Ciencias y Tecnología Departamento de Computación Lógica de programación Elaborado por: Lic. Luis Ernesto Díaz Beteta La característica fundamental de la programación estructurada consiste en que todas las instrucciones tienen un único punto de entrada y un único punto de salida. Esto permite descomponer fácilmente un problema en subproblemas, reduciendo la complejidad y facilitando la programación Sentencias Repetitivas PARA Bibliografía Metodología de la programación. Dr. Osvaldo Cairó Battistutti Editorial Alfa Omega

Lógica de programación 2 Introducción Hasta el momento hemos realizado algoritmos en el que las sentencias se ejecutan de forma secuencial, pero en ciertas ocasiones nos vamos a encontrar con algoritmos cuyas operaciones se deban ejecutar un número repetido de veces. A este conjunto de instrucciones que se ejecuta repetidamente se les conoce como ciclo o bucle. A cada repetición del grupo de sentencias pertenecientes a un ciclo se le conoce como iteración. Todo ciclo debe terminar de ejecutarse luego de un número finito de veces, es necesario en cada iteración, evaluar las condiciones necesarias para decidir si se debe seguir ejecutando o no el ciclo. Un ciclo, siempre debe tener una condición de parada o fin de ciclo. En algunos algoritmos podemos establecer a priori el número de veces a iterar. Por otra parte, en algunos algoritmos no podemos establecer a priori el número de veces que ha de ejecutar el ciclo, sino que este número dependerá de las proposiciones dentro del mismo. La condición de parada de un ciclo se puede indicar al inicio o al final del bucle, de acuerdo a esta premisa podemos clasificar a las sentencias repetitivas en dos grupos: Con la condición de parada al inicio Con la condición de parada al final Dentro del grupo de sentencias repetitivas con la condición de parada al inicio tenemos a la sentencia MIENTRAS y a la sentencia PARA. Y dentro del grupo de sentencias con la condición al final tenemos a la sentencia REPETIR. En esta etapa hablaremos solamente del funcionamiento de la sentencia PARA, más adelante hablaremos de otras formas de construcción de ciclos. Estructura repetitiva PARA La estructura repetitiva PARA conocida comúnmente como FOR, es la estructura algorítmica repetitiva a utilizar cuando conocemos de ante mano el número de veces que debe iterar el ciclo. Este tipo de estructura está presente en todos los lenguajes de programación, ya sean estructurados u orientados a objetos. Por ejemplo, cuando necesitamos solicitarle al usuario un grupo de valores Sintaxis o forma de uso Para variable_numérica<-valor_inicial Hasta valor_final Con Paso paso Hacer secuencia_de_acciones FinPara

Lógica de programación 3 Donde: variable_numérica: Corresponde al identificador de la variable que se utilizara para iterar en el ciclo. valor_inicial: Este es el valor que tomara la variable_numérica, desde el cual se iniciar el bucle. valor_final: Es el valor final de la variable_numérica, cuando se alcance este valor el bucle se detendrá. paso: Este el valor de incremento o decremento que tomara la variable_numérica en cada iteración. Representación gráfica PseInt utiliza la siguiente manera de representar el ciclo PARA Ejemplo Deseamos crear un algoritmo que presente en pantalla los primeros 10 números naturales, para este caso particular nuestra variable_numérica deberá tomar el valor inicial 1 y tendrá como valor final 10 con un incremento o paso de 1. Tal como se muestra a continuación: 1. Proceso CuentaNumerosPara 2. Definir contador Como Entero; 3. Para contador<-1 Hasta 10 Con Paso 1 Hacer 4. Escribir "El valor de contador es: ", contador; 5. FinPara 6. FinProceso En este ejemplo la variable contador (definida en la linea 2, como entero) tomara el valor inicial 1 e incrementara su valor en la unidad hasta alcanzar el valor final (10, en el ejemplo). La estructura algorítmica PARA se utiliza normalmente en casos donde el número de iteraciones es fijo y se conoce de ante mano. Esta estructura repetitiva ejecuta las acciones que se encuentran dentro del bucle un número especificado de veces y controla de modo automático (implícito) el número de iteraciones o pasos a través del cuerpo del bucle.

Lógica de programación 4 Diagrama de flujo: Resultado: Ejemplos estructura repetitiva PARA Ejemplo1 La empresa llamada bttapps desea saber cuanto es el total de su nomina, la cual cuenta con un total de diez empleados. Realice un algoritmo que solicite al usuario el sueldo de cada trabajador y presente en pantalla el total correspondiente a la nomina. Datos de entrada Sueldo de cada uno de los empleados. Datos de salida Valor total de la nomina. Variables a utilizar sueldo: variable de tipo real que se utilizara para capturar el sueldo de cada uno de los empleados. nomina: variable de tipo real almacenara el total correspondiente a la nomina contador: de tipo entero, lleva el control de las iteraciones del bucle. Procedimiento Definir las variables a utilizar Asignar el valor 0 a la variable nomina, para evitar valores basura Crear un ciclo en el cual se soliciten los sueldos a cada uno de los 10 empleados Sumar el sueldo leído para un empleado particular con el valor actual de la variable nomina. Presentar el valor de nomina al culminar el bucle. Solución 1. Proceso NominaPara 2. Definir nomina, sueldo Como Real; 3. Definir contador Como Entero; 4. 5. nomina<-0; //toma el valor inicial 0, para evitar basura

Lógica de programación 5 6. Para contador<-1 Hasta 10 Con Paso 1 Hacer 7. Escribir "Ingrese el sueldo de la persona ", contador; 8. Leer sueldo; 9. nomina <- nomina + sueldo; 10. FinPara 11. 12. Escribir "La nomina total es: ", nomina; 13. FinProceso Diagrama de flujo Resultado

Lógica de programación 6 Ejemplo2 El siguiente algoritmo presenta los primeros 20 números naturales en orden descendente. Datos de entrada No se recibirán valores de por parte del usuario Datos de salida Presentar en pantalla cada una de los números naturales, iniciando del 20 hasta llegar a 0 Variables a utilizar contador: de tipo entero, lleva el control de las iteraciones del bucle. Procedimiento Definir la variable contador Crear un ciclo en el cual se presentara en pantalla el valor de la variable contador La variable contador toma como valor inicial 20 y decrece en la unidad hasta llegar a 1 Solución 1. Proceso CuentaAtras 2. Definir contador Como Entero; 3. 4. Para contador<-20 Hasta 1 Con Paso -1 Hacer 5. Escribir "Numero ", contador; 6. FinPara 7. FinProceso Diagrama de flujo Resultado

Lógica de programación 7 Ejemplo3 El siguiente ejemplo muestra un algoritmo en el cual se solicitan 10 números enteros y presenta en pantalla el promedio de los números ingresados. Datos de entrada: Serie de números ingresados por el usuario. Datos de salida: Promedio de los números ingresados por el usuario. Variables a utilizar contador: Esta variable llevara el control de las iteraciones del ciclo. numero: Almacena el numero ingresado por parte del usuario en cada iteración. suma: Sera la variable que almacena la suma de todos los números ingresados. promedio: Almacena el promedio de todos los números ingresados. Procedimiento: Definir las variables a utilizar. Asignar el valor 0 a la variable suma Solicitar al usuario ingrese una serie de 10 valores, esto se realizara utilizando el ciclo PARA. Dentro del ciclo PARA se irán sumando los valores ingresados. Almacenando el resultado en la variable suma. Al terminar el ciclo se calculara el promedio. Presentar en pantalla el promedio obtenido. Solución 1. Proceso CalcularPromedio 2. Definir contador, numero, suma Como Entero; 3. Definir promedio como real; 4. 5. suma<-0; 6. 7. Para contador<-1 Hasta 10 Con Paso 1 Hacer 8. Escribir Sin Saltar "Ingrese el elemento ", contador; 9. Leer numero; 10. 11. suma<-suma + numero; 12. FinPara 13. 14. promedio<-suma/10; 15. 16. Escribir "El promedio es: ", promedio; 17. 18.FinProceso

Lógica de programación 8 Diagrama de flujo Resultado Ejemplo4 Realice un algoritmo que solicite las calificaciones de 15 estudiantes correspondientes al curso Lógica de programación, Presente en pantalla la cantidad de estudiantes aprobados y reprobados del curso. Datos de entrada: Las calificaciones de cada uno de los estudiantes del curso. Datos de salida: Cantidad de alumnos aprobados y reprobados. Variables a utilizar contador: Esta variable llevara el control de las iteraciones del ciclo. calificacion: Almacena la calificación ingresada para un alumno por parte del usuario en cada iteración. aprobados: Lleva la cuenta de alumnos aprobados reprobados: Lleva la cuenta de alumnos reprobados Procedimiento: Definir las variables a utilizar. Asignar el valor 0 a las variables aprobados y reprobados. Solicitar al usuario ingrese las calificaciones, esto se realizara utilizando el ciclo PARA. Si la calificación ingresada es menor a 60, incrementar el valor de aprobados en uno. Pero si la calificación es mayor o igual a 60 incrementar el valor de reprobados en uno.

Lógica de programación 9 Presentar en pantalla la cantidad de estudiantes aprobados y reprobados del curso Solución 1. Proceso AprobadosReprobados 2. Definir contador, calificacion Como Entero; 3. Definir aprobados, reprobados como entero; 4. 5. aprobados<-0; 6. reprobados<-0; 7. 8. Para contador<-1 Hasta 15 Con Paso 1 Hacer 9. Escribir Sin Saltar "Ingrese la calificacion del alumno ", contador; 10. Leer calificacion; 11. 12. Si calificacion < 60 Entonces 13. reprobados<-reprobados+1; 14. Sino 15. aprobados<-aprobados+1; 16. FinSi 17. FinPara 18. 19. Escribir "La cantidad de aprobados es: ", aprobados; 20. Escribir "La cantidad de reprobados es: ", reprobados; 21. 22. FinProceso Diagrama de flujo

Lógica de programación 10 Resultado Ejemplo5 El siguiente algoritmo muestra los números pares que se encuentran en el rango de 1 a 2*N. Datos de entrada: El valor de N Datos de salida: Números para que estén dentro del rango. Variables a utilizar n: variable de tipo entero, cuyo valor ingresara el usuario i: variable entera, controla las iteraciones del ciclo Procedimiento: Definir las variables a utilizar. Solicitar al usuario el valor de la variable n Crear el ciclo desde 1 hasta 2*n Si el numero es par, escribir en pantalla el valor de dicho numero. Solución 1. Proceso ParesPara 2. Definir n, i Como Entero; 3. 4. Escribir "Ingrese el valor de N: "; 5. Leer n; 6. 7. Para i<-1 Hasta 2*n Con Paso 1 Hacer 8. Si i MOD 2 = 0 Entonces 9. Escribir sin saltar i, " ";

Lógica de programación 11 10. FinSi 11. FinPara 12. FinProceso Diagrama de flujo Resultado Ejercicios propuestos Ejercicio1 Desarrollar un algoritmo que por medio de la sentencia repetitiva Para muestre la tabla de multiplicar de un número dado por el usuario. Ejercicio2 Realice un algoritmo que calcule la potencia de un número, el usuario ingresara el numero correspondiente a la base y el numero correspondiente al exponente. Utilice un ciclo que permita realizar el cálculo en cuestión. Ejemplo: 2 4 = 16, esto es 2*2*2*2 Ejercicio3 Utilizando el ciclo Para, realice un algoritmo que presente el resultado para la siguiente serie: 1 1 + 2 2 + 3 3 + + N N El valor de N sera ingresado por el usuario. Ejercicio4 Realice un algoritmo que sume los números enteros positivos múltiplos de 5 que se encuentre en el rango de 1 a 100. Ejercicio5 Elaborar un algoritmo que solicite la edad de 20 personas y que muestre cuántos de ellos son mayores de edad y cuántos son menores de edad.