Documentos de Académico
Documentos de Profesional
Documentos de Cultura
PEP 2 - Fundamentos de Computaci - N (2013)
PEP 2 - Fundamentos de Computaci - N (2013)
SERIE A
g)
h)
i)
j)
El alumno recibir del equipo docente, un set de preguntas y hojas para las respuestas.
El alumno deber identificarse con su Cdula de Identidad.
Sobre el escritorio slo podr existir lpiz (obligatorio) y goma/lpiz corrector (opcional).
Se recomienda asistir a la prueba sin bolsos, mochilas u otros de similar uso. Los alumnos que
porten estos objetos debern dejarlos al costado de su asiento y no podrn abrirlos hasta que
finalice la prueba.
k) El equipo docente tiene prohibicin de responder preguntas sobre la prueba.
Nombre
RUT
10
11
12
13
A
B
C
D
E
28-AGO-2013
SERIE A
14
PARTE 1: Alternativas
1.
2.
Slo el programa 1
Slo el programa 2
Slo los programas
Slo los programas
Los 3 programas si
Programa 1
Programa 3
def logz (x):
if x < 0:
return log (-x)
elif x == 0:
return log (1)
return log (x)
Cul(es) de los siguientes programas da como resultado la suma de los primeros n nmeros
naturales
? Tip: la suma de los primeros 100 nmeros naturales es 5050.
Programa 1
Programa 2
def sumaNNaturales (n):
contador = 0
resultado = 0
while (contador <= n):
resultado=resultado + contador
contador = contador + 1
return resultado
Cul(es) de los siguientes programas da como resultado una lista invertida y de qu manera
podemos mostrar por pantalla el resultado de llamar a la funcin con parmetro de entrada la
lista [2, 4, 8]?
Programa 1
Programa 2
a)
b)
c)
d)
e)
Programa 2
4.
I y III
II y IV
I, II y V
I, IV y V
III, IV y V
3.
a)
b)
c)
d)
e)
28-AGO-2013
SERIE A
5.
a)
b)
c)
d)
e)
Cul de las siguientes estructuras de datos (lista, tupla y diccionario) permite modificar el valor
en la posicin (o llave) 3? Por ejemplo, estructura [3] = valor
(lunes, martes, miercoles, jueves, viernes)
[lunes, martes, miercoles, jueves, viernes]
{0: lunes, 1: martes, 2: miercoles, 3: jueves, 4: viernes}
a y b
b y c
6.
Mr. Oso desea tener un listado de los productos y precios de todos sus negocios, el cual est
ordenado por nombre alfabtico de los nombres de los productos, para esto tiene toda la
informacin almacenada en archivos de texto de extensin .txt. La informacin est
estructurada de forma: Nombre_Producto; Precio. Cul es el orden correcto de las sentencias
de la abstraccin de procesos realizada?
a)
b)
c)
d)
e)
2
1
1
2
5
4
4
5
5
1
5
5
4
4
4
3
3
3
3
3
7.
>>
>>
>>
>>
>>
>>
1
2
2
1
2
datos = leerArchivo ()
print datos
['24, 31, 45, 28\n', '23, 45, 78, 23']
lista = []
for dato in datos:
lista.append (set (dato.split (',')))
a)
b)
c)
d)
e)
Cul es la sentencia correcta para invocar la funcin resta() y lograr que por pantalla se
imprima 6?
8.
c = 2
a)
b)
c)
d)
e)
9.
a = range(10)
b = range(0,10,1)
c = range(0,10)
a y b
a y c
a y b
b y c
a, b y c
10. De los siguientes modos para abrir un archivo, indique cul alternativa es correcta:
I.
II.
III.
IV.
V.
28-AGO-2013
a)
b)
c)
d)
e)
I y III
II y IV
I, II y IV
I, IV y V
III, IV y V
SERIE A
11. La funcin quick()implementa el algoritmo de ordenacin Quicksort. Recibe una lista con
nmeros enteros sin un orden determinado (por ejemplo [8, 2, 7, 5, 6]) y debe retornar una
lista con los mismos elementos ordenados de menor a mayor (en el ejemplo [2, 5, 6, 7, 8]).
Cul de las siguientes sentencias de retorno corresponde al llamado recursivo correcto?
def quick(lista):
if lista == []:
return lista
else:
menores = []
mayores = []
pivote = lista[0]
for e in lista:
if e<pivote:
menores.append(e)
if e>pivote:
mayores.append(e)
return?
a)
b)
c)
d)
e)
return
return
return
return
return
quick(menores) + quick(mayores)
lista
[pivote]
quick(menores) + [pivote] + quick(mayores)
[pivote] + quick(menores)
a)
b)
c)
d)
e)
I y II
I y III
I y IV
II y IV
II y III
entrega:
a)
b)
c)
d)
e)
El
El
El
El
El
conjunto
conjunto
conjunto
conjunto
conjunto
14. Se tiene un diccionario en Python con el nmero de cajas en vitrina y en bodega de la frutera de la
esquina:
stock = {'pera': (2, 0), 'manzana': (3, 2), 'naranja': (5, 3)}
Revisando, se han encontrado una caja de peras en bodega y una caja de pltanos en vitrina. Cul de
las siguientes sentencias en Python permitiran actualizar el diccionario?
a)
b)
c)
d)
e)
28-AGO-2013
SERIE A
PARTE 2: Desarrollo
Se desea construir un programa en Python para derivar polinomios. A travs de una abstraccin de datos, se
decidi que la mejor manera para representar un polinomio es mediante una lista, donde la posicin en la lista
indica el grado del trmino y el valor almacenado en la posicin corresponde al coeficiente del polinomio, de
esta forma, el polinomio:
, que sin omitir los trminos nulos corresponde a
, quedara representado de la siguiente manera: [-21, 0, 8, -2.5, 0,
1]. Asumiendo que se obtiene la lista del polinomio desde un archivo de texto indices.txt con el formato
mostrado en la tabla 1.
Construya un programa en Python que:
1. Entregue la derivada del polinomio recibido. En el caso del ejemplo, su derivada es: 5
lo que la funcin entregara: [0, 16, -7.5, 0, 5].
, por
-21
0
8
-2.5
0
1
Funcin que lee lneas de un archivo de texto y las almacena en una lista de
elementos de tipo float
Entrada : nombre de archivo
Salida : lista de flotantes
Requiere: Que el nombre de archivo corresponde a uno existente
def leerLista(nombreArchivo):
archivo = open(nombreArchivo, 'r')
polinomio = []
for linea in archivo:
valor = float(linea)
polinomio.append(valor)
archivo.close()
return polinomio
28-AGO-2013
SERIE A
# Funcin que calcula la derivada de un polinomio dado y la entrega en una lista con
# formato de polinomio
# Entrada: lista representando un polinomio
# Salida: lista representando un polinomio
# Requiere: Que la lista tenga elementos
def derivarPolinomio(lista):
lista = lista[1:len(lista)]
i = 1
for e in lista:
lista[i-1] = e * i
i = i + 1
return lista
28-AGO-2013
SERIE A
SERIE A
28-AGO-2013
SERIE A