Inf 140 Guia3 2008 01

3

Click here to load reader

Transcript of Inf 140 Guia3 2008 01

Page 1: Inf 140   Guia3 2008 01

Pontificia Universidad Católica de Valparaíso

Facultad de Ingeniería

Escuela de Ingeniería Informática

© Escuela de Ingeniería Informática - Pontificia Universidad Católica de Valparaíso

Guía Nº 3 – Arreglos Unidimensionales y Bidimensionales

Desarrollar un algoritmo para dar solución a los siguientes problemas.

1. Se tiene un arreglo unidimensional de largo n. Luego de que el usuario ingrese n números en

él, el algoritmo debe determinar los 3 valores más repetidos dentro del arreglo. 2. Se tiene un arreglo unidimensional de largo n, con números positivos ya insertos en él. Dado

un “punto de corte” indicado por el usuario, sumar los segmentos generados e indicar cuál segmento posee el mayor resultado. El valor asociado a la posición del punto de corte se agrega al mayor resultado en el caso que n sea par.

3. Desarrollar un algoritmo que ordene en forma ascendente un arreglo unidimensional desordenado de largo n.

4. Para un arreglo unidimensional de largo n, mantener los valores de las primeras dos posiciones, y a partir de la tercera posición en adelante, introducir el valor de la suma de todos los números contenidos en sus posiciones predecesoras.

5. Desarrollar un algoritmo para una situación similar al problema anterior, pero en esta ocasión sin considerar dentro de las sumas a los números primos contenidos en el arreglo.

6. Se tienen dos arreglos unidimensionales de largo n (n es un número impar). Dado un punto de corte en el valor central de ambos arreglos, sumar los segmentos generados en ellos en forma cruzada, de acuerdo a lo siguiente (el resultado debe quedar almacenado en un tercer arreglo):

Asignatura: INF 140 - Informática 1 Semestre: Primer Semestre - 2008

Profesores: Pamela Hermosilla Monckton E-mail: [email protected]

Daniel Cabrera Paniagua E-mail: [email protected]

Ayudantes: Daniel Gómez Cornejo E-mail: [email protected]

Enrique Urra Coloma E-mail: [email protected]

Page 2: Inf 140   Guia3 2008 01

Pontificia Universidad Católica de Valparaíso

Facultad de Ingeniería

Escuela de Ingeniería Informática

© Escuela de Ingeniería Informática - Pontificia Universidad Católica de Valparaíso

7. Desarrollar un algoritmo que invierta la posición de cada valor contenido en un arreglo unidimensional (el valor de la primera posición debe ocupar la última posición del arreglo, el valor de la segunda posición debe ocupar la penúltima posición del arreglo, etc.).

8. Se tiene un arreglo unidimensional de largo n. Se solicita sumar los números pares e impares de forma separada.

9. Considerando un arreglo unidimensional de largo 100, incluir en arreglos separados los números positivos y números negativos contenidos en él. Asumir que existe la misma cantidad de números positivos y negativos (considerar el valor cero como positivo).

10. Se tiene un arreglo unidimensional de largo n. Se sabe que n es par, y que existe igual cantidad de números pares y números impares en él. Se solicita ingresar los números pares e impares en arreglos separados, y luego de sumar sus valores de manera independiente, se debe indicar cual arreglo posee el mayor resultado asociado.

11. Se tienen dos arreglos unidimensionales de largo n. Incluir en un tercer arreglo de largo n el mayor valor de cada posición.

12. Para una matriz de 50 x 50 que contiene números positivos, determinar cuáles son los tres valores más repetidos.

13. Para una matriz de 50 x 50, determinar cuál es la fila que posee el mayor valor de suma de sus elementos.

14. Para una matriz de n x m, indicar cuál es la fila ó columna que posee el mayor valor de suma de sus elementos.

15. Para una matriz de 10 x 10, determinar cuál de sus dos diagonales posee el mayor valor de suma de sus elementos.

16. Para una matriz de 10 x 10, ingresar un valor cero en toda aquella posición que no esté asociada a una de sus diagonales. Cada posición de las diagonales deben tener un valor uno.

17. Teniendo una matriz de n x m, copiar a un arreglo unidimensional de largo n el mayor valor existente en cada columna.

18. En una empresa se manejan los datos asociados al pago de sueldo de cada empleado a través de una matriz (la empresa posee 50 empleados). La primera fila contiene el rut de cada trabajador. La segunda fila corresponde al sueldo bruto de cada empleado. La tercera fila corresponde al valor de descuento por concepto de cobertura de salud y AFP (en total, el 19% del sueldo bruto). Finalmente, en la cuarta fila se incluye el total de sueldo líquido que recibirá cada empleado de la empresa. Desarrollar un algoritmo que permita saber el sueldo líquido para cada empleado de esta empresa.

19. La empresa del problema anterior ha decidido incorporar una política de distribución más equitativa de las utilidades generadas por la empresa. En este sentido, se han introducido las siguientes modificaciones:

• La primera fila contiene el rut de cada trabajador.

• La segunda fila contiene un código asociado al desempeño de cada trabajador, y al nivel de ingresos que él percibe por su trabajo en la empresa. En este sentido, la clasificación hace que existan tres tipos de empleados: codA, codB y codC.

• La tercera fila corresponde al sueldo bruto de cada empleado.

• La cuarta fila contiene un bono agregado al sueldo de cada empleado de acuerdo al código contenido en la fila dos. Si el empleado posee codA, se agrega a su sueldo bruto el 15% de dicho monto. Si el empleado posee codB, se agrega a su sueldo bruto

Page 3: Inf 140   Guia3 2008 01

Pontificia Universidad Católica de Valparaíso

Facultad de Ingeniería

Escuela de Ingeniería Informática

© Escuela de Ingeniería Informática - Pontificia Universidad Católica de Valparaíso

un 10% de dicho monto. Finalmente, si el empleado es codC, se agrega a su sueldo bruto un 5% de dicho monto.

• La quinta fila corresponde al valor de descuento por concepto de cobertura de salud y AFP (en total, el 19% del sueldo bruto).

• Finalmente, en la sexta fila se incluye el total de sueldo líquido que recibirá cada empleado de la empresa.

Desarrollar un algoritmo que permita conocer el sueldo líquido de cada empleado de la empresa.

20. Para el problema anterior, adicionalmente se ha solicitado indicar cuántos empleados de la empresa reciben un sueldo líquido mensual inferior a $200.000, cuántos empleados están en el segmento $200.001 y $499.999, y cuántos empleados están por sobre esta última cifra.

Primer Semestre, 2008.