Lista de Ejercicios #3

Descargar como pdf o txt
Descargar como pdf o txt
Está en la página 1de 18

Metodología de la Programación

Lista de ejercicios No.3


2do. Parcial 3erPer2020

Alejandra Vanessa Lanza Ramos

Ejercicios (Estructura Repetir)


1. A partir de un numero que se ingresa, el programa debe calcular y escribir la tabla
del número ingresado.

Dato de entrada: Num

2. Calcule e imprima los números del 1 al 100. Note que no es necesario hacer una
lectura pues son números fijos.

3. Calcule e imprima la suma de los números pares entre 0 y 100. Note que no es
necesario hacer una lectura pues son números fijos.

4. Un vendedor ha hecho una serie de ventas y desea saber cuantas de estas fueron de
L.200 o menos, cuantas fueron mayores de L.200 pero inferiores a L.400; y cuantas de
L.400 o superiores a tal cantidad

Datos: Venta₁ Venta₂…., Venta10

Donde: Ventai es una variable de tipo real, que expresa la venta i del vendedor.

5. Dado el peso, la altura y el sexo de 20 personas que pertenecen a un departamento de


la república, obtenga:
- El promedio del peso según el sexo de la persona. (Masculino y femenino)
- El promedio de la altura según el sexo de la persona. (Masculino y femenino)
Note que necesitara para calcular el promedio un acumulador para la suma de pesos y
otro para la suma de alturas según sexo. Necesitará un contador para saber cuántos
hombres y cuantas mujeres hay.

Datos: Pes₁, Alt₁, Sex₁, Pes₂, Alt₂, Sex₂ … Pes 20, Alt20, Sex20
Donde:
Pes : Es una variable de tipo real, que expresa el peso de la persona i.
Alt: Es una variable de tipo real, que expresa la altura de la persona i.
Sex: Es una variable de tipo entero, que expresa el sexo de la persona i. Se ingresa 0 si
es hombre y 1 si es mujer.

SE PIDE para todos los ejercicios: Diagrama de Flujo, pseudocódigo, explicación de


las variables y por supuesto para comprobar, la Prueba de escritorio.
TEMAS PARA INVESTIGACION

Se debe presentar en un documento de Word, elaborado en computadora

1. Arreglos Unidimensionales (Vectores). Definición, funcionamiento, Ejemplos


comprensibles para ustedes.
2. Arreglos Bidimensionales (Tablas/Matrices). Definición, funcionamiento,
Ejemplos comprensibles para ustedes.
3. Métodos de Ordenación de Arreglos. Funcionamiento, ejemplos
4. Funciones: Definición, funcionamiento, Ejemplos.
5. Procedimientos: Definición, funcionamiento, Ejemplos.
1. Arreglos Unidimensionales (Vectores). Definición, funcionamiento, Ejemplos
comprensibles para ustedes.
Un vector es una array unidimensional.

Para declarar un vector de 10 enteros:

Recorrido de un vector
Vamos a inicializar todos los elementos de un vector. Para ello vamos a recorrer el vector e inicializar cada elemento
con un valor ,por ejemplo lo vamos a inicializar a 0. Para recorrer un vector utilizamos un bucle Para

Podríamos recorrer el vector para mostrar el valor de los elementos

Ejemplo:
Inicializar un vector de 5 cadenas a partir de los datos pedidos por teclado y posterior mostrarlos
en pantalla en mayúsculas.

2. Arreglos Bidimensionales (Tablas/Matrices). Definición, funcionamiento,


Ejemplos comprensibles para ustedes.

Una tabla en un array bidimensional. La primera dimensión indica el número de filas y el


segundo el número de columnas.

Definir tabla como Entero;


Dimension tabla[3,4];

Hemos definido una tabla de enteras con 3 filas y 4 columnas, por tanto tenemos 12 elementos.

Para acceder a cada uno de lo elemento tenemos que indicar la fila y la columna en la que se
encuentra, siempre empezando por el 0. Por ejemplo para inicializar el elemento que esta en la
primera fila y la segunda columna sería

tabla[0,1] <- 10;

Recorrido de una tabla

Para recorrer todos los elementos de una tabla necesitamos utilizar dos bucles anidados.
Normalmente el exterior nos va a permitir recorrer las filas y el interior las columnas. Por
ejemplo para inicializar todos los elementos a 0, quedaría:

Para filas<-0 hasta 2 Hacer


Para columnas<-0 hasta 3 Hacer
tabla[filas,columnas]<-0;
FinPara
FinPara
Ejemplo
Inicializar una tabla con los números del 1 al 5, sus cuadrados y sus cubos. Por lo tanto
tenemos que definir una tabla con 5 filas y 3 columnas. Muestra los datos:

Proceso CuadradoCubos
Definir tabla Como Entero;
Definir filas,columnas Como Entero;
Dimension tabla[5,3];
Para filas<-0 hasta 4 Hacer
tabla[filas,0]<-filas+1;
tabla[filas,1]<-(filas+1)^2;
tabla[filas,2]<-(filas+1)^3;
FinPara

Para filas<-0 hasta 4 Hacer


Para columnas<-0 hasta 2 Hacer
Escribir Sin Saltar tabla[filas,columnas]," ";
FinPara
Escribir "";
FinPara
FinProceso

Los arrays pueden ter las dimensiones que deseemos, por ejemplo podemos tener una array de
tres dimensiones

Definir tabla como Entero;


Dimension tabla[4,4,4];

Y podríamos inicializar el primer elemento como:

tabla[0,0,0]<-10;

Necesitaríamos tres bucles para recorrer un array de tres dimensiones:

Para i<-0 hasta 2 Hacer


Para j<-0 hasta 2 Hacer
Para k<-0 hasta 2 Hacer
tabla[i,j,k]<-0;
FinPara
FinPara
FinPara
3. Métodos de Ordenación de Arreglos. Funcionamiento, ejemplos

¿Qué es ordenamiento?

Es la operación de arreglar los registros de una tabla en algún orden secuencial de acuerdo a un
criterio de ordenamiento.

El propósito principal de un ordenamiento es el de facilitar las búsquedas de los miembros del


conjunto ordenado.

Ej. de ordenamientos:

Dir. Telefónico, tablas de contenido, bibliotecas y diccionarios, etc.

Ejemplos

METODO DE INSERCIÓN.

Si el arreglo a ordenar es a = ['a','s','o','r','t','i','n','g','e','x','a','m','p','l','e'], el algoritmo va a recorrer


el arreglo de izquierda a derecha. Primero toma el segundo dato 's' y lo asigna a v y i toma el
valor de la posición actual de v.

Luego compara esta 's' con lo que hay en la posición j-1, es decir, con 'a'. Debido a que 's' no es
menor que 'a' no sucede nada y avanza i.

Ahora v toma el valor 'o' y lo compara con 's', como es menor recorre a la 's' a la posición de la
'o'; decrementa j, la cual ahora tiene la posición en dónde estaba la 's'; compara a 'o' con a[j-1] ,
es decir, con 'a'. Como no es menor que la 'a' sale del for y pone la 'o' en la posición a[j]. El
resultado hasta este punto es el arreglo siguiente: a = ['a','o','s','r',....]

Así se continúa y el resultado final es el arreglo ordenado :

a = ['a','a','e','e','g','i','l','m','n','o','p','r','s','t','x']

MÉTODO DE SELECCIÓN.

El arreglo a ordenar es a = ['a','s','o','r','t','i','n','g','e','x','a','m','p','l','e'].

Se empieza por recorrer el arreglo hasta encontrar el menor elemento. En este caso el
menor elemento es la primera 'a'. De manera que no ocurre ningún cambio. Luego se
procede a buscar el siguiente elemento y se encuentra la segunda 'a'.

Esta se intercambia con el dato que está en la segunda posición, la 's', quedando el
arreglo así después de dos recorridos: a = ['a','a','o','r','t','i','n','g','e','x','s','m','p','l','e'].

El siguiente elemento, el tercero en orden de menor mayor es la primera 'e', la cual se


intercambia con lo que está en la tercera posición, o sea, la 'o'. Le sigue la segunda 's', la
cual es intercambiada con la 'r'.

El arreglo ahora se ve de la siguiente manera: a =


['a','a','e','e','t','i','n','g','o','x','s','m','p','l','r'].
De esta manera se va buscando el elemento que debe ir en la siguiente posición hasta
ordenar todo el arreglo.

El número de comparaciones que realiza este algoritmo es :

Para el primer elemento se comparan n-1 datos, en general para el elemento i-ésimo se
hacen n-i comparaciones, por lo tanto, el total de comparaciones es:

la sumatoria para i de 1 a n-1 (n-i) = 1/2 n (n-1).

MÉTODO DE SHELL.

Para el arreglo a = [6, 1, 5, 2, 3, 4, 0]


Tenemos el siguiente recorrido:

Recorrido Salto Lista Ordenada Intercambio

1 3 2,1,4,0,3,5,6 (6,2), (5,4), (6,0)

2 3 0,1,4,2,3,5,6 (2,0)

3 3 0,1,4,2,3,5,6 Ninguno

4 1 0,1,2,3,4,5,6 (4,2), (4,3)

5 1 0,1,2,3,4,5,6 Ninguno

4. Funciones: Definición, funcionamiento, Ejemplos.

Una función es un subprograma que recibe como argumentos o parametros, datos de tipos
numerico o no numerico, y devulve un único resultado. Esta característica le diferencia
escencialmente de un procedimiento.

Su formato es el siguiente:

funcion nombrefuncion (p1,p2,...) : tipo a devolver


declaraciones locales
inicio
cuerpo de la función
nombrefuncion <- valor a devolver
fin

Una función es llamada por medio de su nombre, en una sentencia de asignación o en una
sentencia de salida.
Se puede llamar a una función en cualquiera de las siguientes formas:
nombrefuncion o nombrefuncion(par)
idVar <- nombrefuncion.

5. Procedimientos: Definición, funcionamiento, Ejemplos.

Un procedimiento es un subprograma que realiza una tarea especifica. Puede


recibir cero o mas valores del programa que llama y devolver cero o mas valores
a dicho programa.

Un procedimiento esta compuesto de un grupo de sentencias a las que se asigna


un nombre (identificador) y constituye una unidad de programa. La tarea
determinada al procedimiento se ejecuta siempre que se encuentra el nombre del
procedimiento.

La declaración indica las instrucciones a ejecutar. Su sintaxis es:

procedimiento nombreproc (lista de par)

declaraciones locales

inicio

cuerpo del procedimiento (instrucciones)

fin.

Un procedimiento es llamado en un programa o dentro de otro procedimiento


directamente por su nombre en cualquiera de las dos formas:

nombreproc

nombreproc (lista par. actuales)

También podría gustarte