You are on page 1of 7

PROGRAMACIN I

HOJA 13

Prob01
Ingresar n nmeros a un vector y mostrar el mayor y el menor numero

Prob02
Ingresar n nmeros a un vector e intercambiar el primero con el ultimo

Prob03
Ingresar n nmeros a un vector e intercambiar el mayor valor por el menor valor

Prob04
Guardar N y M nmeros en dos vectores tal como A y B, luego mostrar A B en un nuevo vector C.

Prob05
Ingresar n nmeros enteros a un vector, luego ingresar un nmero cualquiera, se pide pasar a un nuevo vector
todos los nmeros menores e iguales al nmero que ingreso, en caso no exista ninguno, mostrar un mensaje
correspondiente.

Prob06
Ingresar n nmeros enteros a un vector, calcule el promedio entero y luego reemplace el mayor nmero por
el promedio calculado.

Prob7
Ingresar un nmero de cuatro cifras, y colocar cada uno de sus dgitos en un vector, adems, mostrar la
posicin del menor digito.

Prob8
Guardar n nmeros enteros a un vector, calcular el promedio y reemplazar todos los nmeros que ocupan las
posiciones pares, por el promedio calculado.

Prob9
Guardar N y M nmeros enteros a dos vectores tal como A y B, luego trasladar los nmeros impares del vector
A al final del vector B.

Prob10
En un concurso de conocimiento se almacena en un vector los nombres de N participantes y en otro vector
las notas obtenidas (valores de 0 a 20), se pide mostrar el nombre del participante que obtuvo la mayor nota.

PREGUNTAS EXAMEN FINAL

Prob11
Ingresar N y M nmeros enteros a 2 vectores tal como A y B, si el vector A tiene ms elementos que B, pasar
los nmeros impares de A al final de B, caso contrario, pasar los nmeros impares de B al final de A.

Prob12
Ingresar n nmeros enteros a un vector, luego ingrese un nmero, si el nmero ingresado se encuentra dentro
del vector, que muestre su posicin, caso contrario mostrar el mensaje: El nmero no est en el arreglo.

Prob13
1.Escribe un programa tal que, dado un array numrico, calcule la suma de sus elementos. Por ejemplo, array
= [1, 2, 3, 4, 5]

Prob14
2.Escribe un programa tal que, dado un array de nmeros, diga de cada uno si es par o impar. Por ejemplo,
array = [12, 23, 456, 123, 4579]
PROGRAMACIN I
FUNDAMENTOS DE PROGRAMACIN (IS147)
Ejercicios para practicar

______________________________________________________________________________

Pregunta 1: Elecciones para el Congreso

El Jurado Nacional de Elecciones ha decidido renovar el software que utiliza para el conteo de los resultados
de las elecciones para el Congreso que se realizarn en el mes de abril del prximo ao. Se debe elegir a 120
congresistas en forma proporcional al porcentaje de votos obtenidos por cada partido poltico que postul
al congreso. Los partidos polticos que hayan obtenido menos del 2 por ciento de la votacin total no tendrn
ningn representante en el Congreso.

Los votos blancos y nulos, as como la cantidad de votos de los partidos que obtuvieron menos del 2 por
ciento no sern considerados para el clculo de los 120 congresistas elegidos, por lo que se deber volver a
calcular el porcentaje sin considerarlos para obtener el nmero de curules que le corresponde a cada partido
poltico.

Los partidos polticos que estn postulando son:

- Cooperacin Nacional

- Justicia Popular

- Juntos Per

- Arriba Per

- Per Siempre

- Futuro Per

La informacin ya se encuentra tabulada en dos arreglos, uno con los nombres de cada partido poltico y el
otro con la cantidad de votos obtenidos por cada partido a nivel nacional, incluyendo tambin los votos
blancos y nulos.

Se solicita lo siguiente:

a) Desarrollar un subprograma que calcule los porcentajes obtenidos por cada partido poltico. El resultado
deber entregarse en un arreglo que calcule cada porcentaje en el orden en que se encuentra el arreglo que
contiene los nombres de los partidos.
PROGRAMACIN I
b) Desarrollar un subprograma que determine los partidos que obtuvieron curules y la cantidad de congresistas
elegidos para cada uno de esos partidos. El resultado deber entregarse en un arreglo que debe contener el
nombre de cada partido seguido de su respectiva cantidad de congresistas elegidos. Solo se debern mostrar
los partidos que obtuvieron representantes. Por ejemplo: [Cooperacin Nacional, 70, Justicia Nacional,
50].

#encoding:UTF-8

def calcularPorcentajeVotos(partidos,votos)

end

def calcularCurules(partidos,votos)

end

#--- zona de test ----

def test_calcularPorcentajeVotos

print validate([22.5,1.33,20.0,7.5,42.08,1.25], calcularPorcentajeVotos(@partidos,@votos1))

print validate([36.67,2.50,30.00,0.83,23.33,3.67], calcularPorcentajeVotos(@partidos,@votos2))

print validate([25.00,16.67,6.67,2.50,22.50,20.00], calcularPorcentajeVotos(@partidos,@votos3))

print validate([13.67,0.83,14.40,23.87,18.33,14.23], calcularPorcentajeVotos(@partidos,@votos4))


PROGRAMACIN I
end

def test_calcularCurules

print validate(["Cooperacin Nacional",29,"Juntos Per",26,"Arriba Per",10,"Per Siempre",55],


calcularCurules(@partidos,@votos1))

print validate(["Cooperacin Nacional",46,"Justicia Popular",3,"Juntos Per",37,"Per


Siempre",29,"Futuro Per",5], calcularCurules(@partidos,@votos2))

print validate(["Cooperacin Nacional",32,"Justicia Popular",21,"Juntos Per",9,"Arriba


Per",3,"Per Siempre",29,"Futuro Per",26], calcularCurules(@partidos,@votos3))

print validate(["Cooperacin Nacional",19,"Juntos Per",20,"Arriba Per",34,"Per


Siempre",26,"Futuro Per",20], calcularCurules(@partidos,@votos4))

end

def validate (expected, value)

expected == value ? "." : "F"

end

def test

@partidos=["Cooperacin Nacional","Justicia Popular","Juntos Per","Arriba Per","Per Siempre","Futuro


Per","Blancos y Nulos"]

@votos1=[1350000,80000,1200000,450000,2525000,75000,320000]

@votos2=[2200000,150000,1800000,50000,1400000,220000,180000]

@votos3=[1500000,1000000,400000,150000,1350000,1200000,400000]

@votos4=[820000,50000,864000,1432000,1100000,854000,880000]

puts "Test de prueba del programa"

puts "---------------------------"

test_calcularPorcentajeVotos

puts " "

test_calcularCurules

puts " "

end
PROGRAMACIN I
test

Pregunta 2: Encuesta telefnica

Una empresa de telefona quiere medir el grado de satisfaccin de la atencin de su Call Center. Para esto
ha decidido realizar una encuesta cada vez que un cliente llama al Call Center para realizar alguna consulta.
Dicha encuesta consta de una sola pregunta, la cual indaga acerca del nivel de satisfaccin en cuanto a la
atencin. El cliente debe digitar en el telfono el nmero que se le indica y las respuestas que puede dar son
las siguientes:

Concepto

Excelente 5

Muy Bueno 4

Bueno 3

Regular 2

Malo 1

Se le pide lo siguiente:

a) Desarrollar un subprograma que determine el puntaje promedio de atencin para un agente determinado.
Se tiene como dato de entrada un arreglo con los niveles de satisfaccin que le dieron a ese agente.

b) Desarrollar un subprograma que permita buscar los colaboradores que han tenido un nivel de satisfaccin
Excelente o Muy Bueno.

def obtenerPromedio(encuestas)

end

def obtenerMejores(puntajes,agentes)
PROGRAMACIN I

end

#----------Zona de Test------------------

def test_obtenerPromedio

encuestasAgente1 = [5,3,5,3,2]

encuestasAgente2 = [3,2,3,5,1]

encuestasAgente3 = [1,5,3,4,5]

print validate(3.60, obtenerPromedio(encuestasAgente1))

print validate(2.80, obtenerPromedio(encuestasAgente2))

print validate(3.60, obtenerPromedio(encuestasAgente3))

end

def test_obtenerMejores

analistas = ["Margarita Garriazo","Sandra Chumpitaz","Juan Palomino","Alicia


Enriquez","Juan Mascaro"]

puntaje1 = [3.6,1.4,4.5,2.2,1]

puntaje2 = [2.3,1.2,4.3,2.5,4.1]

puntaje3 = [4.1,1.2,3.2,4.7,3.5]

print validate(["Juan Palomino"], obtenerMejores(puntaje1, analistas))

print validate(["Juan Palomino", "Juan Mascaro"], obtenerMejores(puntaje2, analistas))

print validate(["Margarita Garriazo","Alicia Enriquez"], obtenerMejores(puntaje3, analistas))

end

def validate (expected, value)


PROGRAMACIN I
expected == value ? "." : "F"

end

def test

puts "Test de prueba del programa"

puts "---------------------------"

test_obtenerPromedio

puts " "

test_obtenerMejores

puts " "

end

test

You might also like