Clase 5 - 221014 - Prog

March 24, 2018 | Author: Jhon Eduard Bustamante | Category: Histogram, Algorithms, Mathematical Concepts, Physics & Mathematics, Mathematics


Comments



Description

Programación IIng. Auramaria Londoño Cano Universidad del Quindío-Ingeniería Ingeniería Electrónica- Programación I 25/10/2014 1 Arreglos Cadenas de vectores. Matrices. Universidad del Quindío-Ingeniería Electrónica- Programación 1 25/10/2014 2 o más técnicamente. un espacio de memoria que permite almacenar una colección de elementos. todos del mismo tipo.Programación 1 25/10/2014 3 . 0 1 2 3 4 5 6 La dimensión o tamaño de un arreglo es el número de casillas que lo conforman.Un arreglo es una estructura de datos. Universidad del Quindío-Ingeniería Electrónica. Universidad del Quindío-Ingeniería Electrónica.0 1 2 3 4 5 6 Cada una de las casillas de un arreglo tiene asociado un número que la identifica de manera única.Programación 1 25/10/2014 4 . Si el arreglo es de dimensión N. A este número se le llama índice o dirección. la última casilla tiene índice N-1. Declaración de arreglos: En el pseudolenguaje. de dimensión 15 y que pueda almacenar datos de tipo caracter. si se quiere declarar un arreglo con nombre letras.Programación 1 25/10/2014 5 . un arreglo se declara usando el siguiente formato o plantilla: <NOMBRE> : arreglo [<N>] de <TIPO> Así por ejemplo. se debe escribir la siguiente línea. letras : arreglo [15] de caracter Universidad del Quindío-Ingeniería Electrónica. se puede declarar el siguiente arreglo: facturasTel : arreglo [12] de real Universidad del Quindío-Ingeniería Electrónica.Programación 1 25/10/2014 6 .Ejemplos de declaración de arreglos:  Si se necesita guardar las ventas diarias de una tienda durante la última semana. se puede declarar el siguiente arreglo: ventas : arreglo [7] de real  Si se quiere guardar las notas que ha sacado un estudiante en los tres talleres y en los cuatro laboratorios del curso de Programación se pueden declarar los siguientes arreglos: talleres : arreglo [3] de real laboratorios : arreglo [4] de real  Si se quiere guardar el valor de las últimas 12 facturas telefónicas de una casa. se debe escribir el nombre del arreglo seguido por el índice de la casilla entre corchetes.Declaración de arreglos: 0 1 2 3 4 5 6 Para referirse a una casilla particular de un arreglo se debe seguir el siguiente formato: <NOMBRE>[<INDICE>] Es decir. Universidad del Quindío-Ingeniería Electrónica.Programación 1 25/10/2014 7 . de la siguiente manera: cifras : arreglo [10] de entero La siguiente instrucción asigna o guarda el número 100 en la primera casilla de este arreglo: cifras[0]= 100 Universidad del Quindío-Ingeniería Electrónica. suponga que se declara el arreglo cifras.Ejemplos de declaración de arreglos: Para los siguientes ejemplos.Programación 1 25/10/2014 8 . Programación 1 25/10/2014 9 .Ejemplos de declaración de arreglos: La siguiente instrucción iterativa guarda 550 en cada una de las últimas 5 casillas de este arreglo: i=5 MIENTRAS (i<10) HACER cifras[i]= 550 i=i+1 FIN_MIENTRAS 100 0 1 2 3 4 550 550 550 550 550 5 6 7 8 9 Universidad del Quindío-Ingeniería Electrónica. Ejemplos de arreglos: Un histograma para una colección de datos es una secuencia de parejas de la forma (d. y que se obtienen las siguientes respuestas: c b c a b c d e e a b b d c a c c b d a. suponga que se le pide a 20 personas calificar con las letras a b c d y e el desempeño del gobierno actual.f). El histograma para esta colección de datos es: a: 4 b: 5 c: 6 d: 3 e: 2 a: **** b: ***** c: ****** d: *** e: ** Universidad del Quindío-Ingeniería Electrónica.Programación 1 25/10/2014 10 . donde d es un dato y f es su frecuencia en la colección. Por ejemplo. Ejemplos de arreglos: Considere el problema de construir un algoritmo que haga un histograma para una lista de hasta 100 valores.  Las entradas (datos conocidos) para el algoritmo son: ◦ El número de datos de la colección ◦ La colección misma  La salida esperada (dato desconocido) es: ◦ El histograma de la colección Universidad del Quindío-Ingeniería Electrónica. donde cada valor es un número entero comprendido en el intervalo 1 al 5.Programación 1 25/10/2014 11 . Programación 1 25/10/2014 12 . Universidad del Quindío-Ingeniería Electrónica. de la siguiente manera:  REQUIERE: ◦ El número de datos de la colección debe ser mayor que cero y menor o igual que cien.  GARANTIZA: ◦ Calcula el histograma asociado a la colección y lo presenta en la pantalla. (100totalDatos>0) ◦ Cada uno de los elementos de la colección debe ser un número entre 1 y 5.Ejemplos de arreglos: Las condiciones iniciales y finales se pueden expresar mediante dos cláusulas: REQUIERE y GARANTIZA. ◦ La frecuencia de cada dato aparece graficado como una secuencia de asteriscos. Ejemplos de arreglos: PRIMERA VERSIÓN:       Inicio Paso 1. Paso 3. Fin Leer el número de elementos que tiene la colección Leer los elementos de la colección Calcular el histograma Presentar el histograma en la pantalla Universidad del Quindío-Ingeniería Electrónica. Paso 2.Programación 1 25/10/2014 13 . Paso 4. Presentar el histograma en la pantalla Fin Universidad del Quindío-Ingeniería Electrónica.Programación 1 25/10/2014 14 .totalDatos: entero colección: arreglo [100] de entero Inicio escribir(“Por favor digite el número de datos de la colección : (<= 100)”) leer(totalDatos) i=0 mientras (i<totalDatos) hacer escribir(“Por favor digite el dato :”) escribir(i+1) leer(colección[i]) i= i+1 fin_mientras Paso 3.Ejemplos de arreglos: SEGUNDA VERSIÓN:                   Procedimiento principal Variables i. Calcular el histograma Paso 4. para calcular las frecuencias se puede hacer lo siguiente:   Paso 3. si se encuentra un 5. e ir incrementando la frecuencia asociada a cada uno de ellos. Universidad del Quindío-Ingeniería Electrónica. es decir. dato por dato.Programación 1 25/10/2014 15 .2: Revisar la colección. histograma: arreglo[5] de entero Ahora. En este problema particular se sabe que todos los datos están entre 1 y 5. se le debe sumar 1 a histograma[4]. se debe incrementar en 1 la frecuencia asociada al 5.Ejemplos de arreglos: La parte nuclear de la solución es el Paso 3 (calcular el histograma).1: Inicializar las cinco casillas del arreglo histograma en cero Paso 3. Así. Programación 1 25/10/2014 16 .2 d= colección[i]-1 histograma[d]= histograma[d]+1 i= i+1 fin_mientras Universidad del Quindío-Ingeniería Electrónica.Ejemplos de arreglos: En Pseudolenguaje. el paso 3: cálculo del histograma puede ser:            i=0 mientras (i<5) hacer // inicializa las frecuencias en 0. Paso 3. Paso 3.1 histograma[i]= 0 i= i+1 fin_mientras i=0 mientras (i<totalDatos) hacer // calcula las frecuencias. el paso 4 (presentar el histograma en la pantalla) se puede refinar como se muestra enseguida:              i=0 mientras (i<5) hacer escribir(i+1) escribir(“: “) f= histograma[i] j= 0 mientras(j<f) hacer escribir („*‟) j= j+1 fin_mientras escribir(\n) i= i+1 fin_mientras // este ciclo recorre el histograma // f guarda la frecuencia de dato i+1 // este ciclo escribe f asteriscos Universidad del Quindío-Ingeniería Electrónica.Ejemplos de arreglos: Concluyendo.Programación 1 25/10/2014 17 . Procedimiento principal        Constantes N5 // N es el tamaño máximo del histograma MAXDATOS 100 // MAXDATOS es el tamaño máximo de la colección Variables i. totalDatos: entero coleccion: arreglo [MAXDATOS] de entero histograma: arreglo [N] de entero Universidad del Quindío-Ingeniería Electrónica.Ejemplos de arreglos: El algoritmo completo se presenta enseguida. j.Programación 1 25/10/2014 18 . Ejemplos de arreglos: El algoritmo completo se presenta enseguida.Programación 1 25/10/2014 19 .           Inicio escribir(“Por favor digite el número de datos de la colección : (inferior o igual a 100)”) leer(totalDatos) i=0 mientras (i<totalDatos) hacer escribir(“Por favor digite el dato :”) escribir(i+1) leer(colección[i]) i= i+1 fin_mientras Universidad del Quindío-Ingeniería Electrónica. Programación 1 25/10/2014 20 .2 d = colección[i]-1 histograma[d] = histograma[d]+1 i = i+1 fin_mientras Universidad del Quindío-Ingeniería Electrónica. Paso 3.Ejemplos de arreglos: El algoritmo completo se presenta enseguida. Paso 3.1 histograma[i]:= 0 i= i+1 fin_mientras i=0 mientras (i<totalDatos) hacer // calcula las frecuencias.            i=0 mientras (i<N) hacer // inicializa las frecuencias en 0. Programación 1 25/10/2014 21 .Ejemplos de arreglos: El algoritmo completo se presenta enseguida.               i=0 mientras (i<N) hacer // este ciclo recorre el histograma escribir(i+1) escribir(“: “) f = histograma[i] // f guarda la frecuencia de dato i+1 j=0 mientras(j<f) hacer // este ciclo escribe f asteriscos escribir („*‟) j= j+1 fin_mientras escribir(salto-de-linea) i= i+1 fin_mientras Fin Universidad del Quindío-Ingeniería Electrónica.  Las respuestas correctas.  Cada una de las respuestas dadas por el estudiante.Problema de arreglos: Construya un algoritmo que califique un examen de selección múltiple presentado por un estudiante de Programación.D y E. Universidad del Quindío-Ingeniería Electrónica. En cada una de las preguntas del examen.C.Programación 1 25/10/2014 22 . identificadas con las letras A. Esta nota corresponde al número de aciertos que tuvo el estudiante. La salida esperada (dato desconocido) es:  La nota obtenida. el estudiante debió elegir una de cinco opciones. Las entradas (datos conocidos) para el algoritmo son:  El número de preguntas que tenía el examen.B. ◦ Cada una de las respuestas correctas debe ser una letra mayúscula que está entre A y E. ◦ La nota dada por el algoritmo corresponde al total de respuestas acertadas del estudiante. (totalPreguntas>0) ◦ Cada una de las respuestas del estudiante debe ser una letra mayúscula que está entre A y E.Problema de arreglos:  REQUIERE:  GARANTIZA: ◦ El número de preguntas del examen debe ser mayor que cero. Universidad del Quindío-Ingeniería Electrónica.Programación 1 25/10/2014 23 .
Copyright © 2024 DOKUMEN.SITE Inc.