Logo Studenta

Proyecto S L D O S 2 0-16

¡Estudia con miles de materiales!

Vista previa del material en texto

Paradigmas de Programación
Pregunta 1
Incorrecta
Puntúa -0,10
sobre 1,00
Marcar
pregunta
Pregunta 2
Correcta
Puntúa 1,00
sobre 1,00
Marcar
pregunta
Pregunta 3
Correcta
Puntúa 1,00
sobre 1,00
Marcar
pregunta
Pregunta 4
Incorrecta
Puntúa -0,10
sobre 1,00
Marcar
pregunta
Pregunta 5
Incorrecta
Puntúa 0,00
sobre 1,00
Marcar
pregunta
Pregunta 6
Incorrecta
Puntúa -0,10
sobre 1,00
Marcar
pregunta
Pregunta 7
Correcta
Puntúa 1,00
sobre 1,00
Marcar
pregunta
Pregunta 8
Incorrecta
Puntúa 0,00
sobre 1,00
Marcar
pregunta
Pregunta 9
Correcta
Puntúa 1,00
sobre 1,00
Marcar
pregunta
Pregunta 10
Incorrecta
Puntúa 0,00
sobre 1,00
Marcar
pregunta
Pregunta 11
Correcta
Puntúa 1,00
sobre 1,00
Marcar
pregunta
Pregunta 12
Correcta
Puntúa 1,00
sobre 1,00
Marcar
pregunta
Pregunta 13
Correcta
Puntúa 1,00
sobre 1,00
Marcar
pregunta
Pregunta 14
Correcta
Puntúa 1,00
sobre 1,00
Marcar
pregunta
Pregunta 15
Correcta
Puntúa 1,00
sobre 1,00
Marcar
pregunta
Pregunta 16
Incorrecta
Puntúa 0,00
sobre 1,00
Marcar
pregunta
Pregunta 17
Incorrecta
Puntúa 0,00
sobre 1,00
Marcar
pregunta
Pregunta 18
Correcta
Puntúa 1,00
sobre 1,00
Marcar
pregunta
Pregunta 19
Correcta
Puntúa 1,00
sobre 1,00
Marcar
pregunta
Pregunta 20
Correcta
Puntúa 1,00
sobre 1,00
Marcar
pregunta
Pregunta 21
Correcta
Puntúa 1,00
sobre 1,00
Marcar
pregunta
Pregunta 22
Correcta
Puntúa 1,00
sobre 1,00
Marcar
pregunta
Pregunta 23
Correcta
Puntúa 1,00
sobre 1,00
Marcar
pregunta
Pregunta 24
Correcta
Puntúa 1,00
sobre 1,00
Marcar
pregunta
Pregunta 25
Correcta
Puntúa 1,00
sobre 1,00
Marcar
pregunta
Pregunta 26
Correcta
Puntúa 1,00
sobre 1,00
Marcar
pregunta
Pregunta 27
Parcialmente
correcta
Puntúa 0,50
sobre 1,00
Marcar
pregunta
Pregunta 28
Incorrecta
Puntúa -0,10
sobre 1,00
Marcar
pregunta
Pregunta 29
Correcta
Puntúa 1,00
sobre 1,00
Marcar
pregunta
Pregunta 30
Correcta
Puntúa 1,00
sobre 1,00
Marcar
pregunta
Pregunta 31
Sin contestar
Puntúa como
1,00
Marcar
pregunta
Pregunta 32
Correcta
Puntúa 1,00
sobre 1,00
Marcar
pregunta
Pregunta 33
Correcta
Puntúa 1,00
sobre 1,00
Marcar
pregunta
Pregunta 34
Incorrecta
Puntúa 0,00
sobre 1,00
Marcar
pregunta
Pregunta 35
Correcta
Puntúa 1,00
sobre 1,00
Marcar
pregunta
Pregunta 36
Correcta
Puntúa 1,00
sobre 1,00
Marcar
pregunta
Pregunta 37
Correcta
Puntúa 1,00
sobre 1,00
Marcar
pregunta
Pregunta 38
Incorrecta
Puntúa 0,00
sobre 1,00
Marcar
pregunta
Pregunta 39
Incorrecta
Puntúa 0,00
sobre 1,00
Marcar
pregunta
Pregunta 40
Correcta
Puntúa 1,00
sobre 1,00
Marcar
pregunta
Pregunta 41
Correcta
Puntúa 1,00
sobre 1,00
Marcar
pregunta
Pregunta 42
Correcta
Puntúa 1,00
sobre 1,00
Marcar
pregunta
Pregunta 43
Correcta
Puntúa 1,00
sobre 1,00
Marcar
pregunta
Finalizar revisión
Comenzado el Tuesday, 16 de November de 2021, 10:58
Estado Finalizado
Finalizado en Tuesday, 16 de November de 2021, 12:13
Tiempo
empleado
1 hora 15 minutos
Puntos 29,10/43,00
Calificación 67,67 de 100,00
Sea:
algo 0 _ a = [a]
algo n f a = a : algo (n - 1) f (f a)
El tipo inferido es:
 
a. algo :: a->(a->a)->a->[a]
b. Ninguna
c. algo :: Int->(a->a)->a->[a]
d. algo :: Num a => a->(a->a)->a->[a] 
e. algo :: Num a => Int->(a->a)->a->[a]
Indicar el valor que regresa la llamada (escribir sin espacios): crte [4,3,5,2,7]
crte (x:y:zs)
| x < y = Just y
| otherwise = crte (y:zs)
crte _ = Nothing
Respuesta: Just 5 
Teniendo el siguiente código:
¿Qué ocurre al ejecutar con --> ss [18, 23, 31, 14, 25, 46] 3 ?
Seleccione una:
a. regresa (0, 0)
b. Ninguna de las otras
c. regresa [(18, 23), (31,14), (25,46)]
d. Produce un error en (a : b : q)
e. regresa (31, 25) 
f. Produce el error: pattern match failure: head []
g. Produce un error en (a, head q)
¿Qué representa la siguiente expresión?
(1:2:3)
 
a. dos átomos y la cola de la lista 
b. una tupla de tres valores
c. una cabeza con una cola de dos valores
d. una lista de tres valores
e. ninguna de las otras.
Definir la función ‘elimPares’ que recibe una lista y devuelve otra, sin pares de valores consecutivos repetidos.
Por ejemplo: elimPares [1,2,3,3,4,5,5,5,6,7,3,8]      =>   [1,2,4,5,6,7,3,8]
Completar la línea que falta.
Respuesta: difer (tail k) 
En Haskell, a un conjunto de definiciones se la denomina:
a. Predicado
b. Regla
c. Ninguna de las otras. 
d. Guión
Conjunto de tamaño fijo con elementos de distintos tipos
a. tupla 
b. Ninguna
c. type
d. arreglo
e. lista hetereogénea
¿Son equivalentes las siguientes definiciones?
fun :: Num a => [a] -> [a]-> [a]   y   fun :: [Int]->[Int]->[Int]
a. Depende del tipo específico de 'a'
b. En lugar de Num a => debería indicarse Int a => 
c. En lugar de Num a => debería indicarse Real a => 
d. No
e. Si
Si definimos la función: f (x, y) = (a+1) * (a+2) where a =(x+y)/2
¿Cuál de las siguientes definiciones de tipo se corresponden con ella?
a. f:: Float -> Float -> Float
b. f:: Int -> Int -> Int
c. f :: Bool -> String
d. f:: (Float, Float) -> Float 
Indicar el valor que regresa la llamada (escribir sin espacios): 
comp [2,3,4,4,5,6,7,7,8,9]
 
comp [] = []
comp (x:xs) = compAux xs x [x]
compAux :: (Eq a) => [a] -> a -> [a] -> [a]
compAux (x:xs) y acc
    | x == y = compAux xs y acc
    | x /= y = compAux xs x (acc ++ [x])
 
Respuesta: compAux [] 9 ((((((([2]++[3])++[4])++[5])++[6])++[7])++[8])++[9]) 
Categoría de funciones que utiliza Haskell
a. Ninguna
b. sin tipología de datos
c. de orden inferior
d. binarias
e. de orden superior 
Denominación de las funciones que no tienen efectos laterales
a. lambda
b. de orden superior
c. unarias
d. puras 
e. Ninguna
Valor resultante de evaluar    (escribir sin espacios)
Respuesta: [(2,1),(2,2)] 
Valor resultante de evaluar   (escribir sin espacios)
Respuesta: [1,2,3,3,4] 
¿Cuál de las siguientes signaturas coincide con la definición?:
f (x, y) = (x+y-1)/2 * (x-y+1)*2
a. f:: Float -> Float -> Float
b. f :: (Integer,Integer) -> (Integer ->Integer)
c. f:: (Float,Float) -> Float 
d. Ninguna de las otras.
e. f :: (Integer,Integer) -> (Integer,Integer)
Indicar el prototipo usando tipos genéricos (usar a para sin y b para <) según corresponda, de una función que
es llamada así:
f1  (sin)  (<)  > 3.14
 
Respuesta: fi ::(Num a b)=>a->b->Float 
Sea la función 'p' parametrizada con tipos genéricos (usar  a como nombre genérico) , que al ser llamada
devuelve lo que se indica y lo que hace es procesar aquellas tuplas en las que coinciden los valores de los 1ros
elementos :
p [((1,1),1),((1,2),2),((1,3),3),((2,1),2)] 2 => [(1,2),(2,1)]
 
Respuesta: p (Int a) :: [((a,a),a),((a,a),a)] -> [((a,a),a),((a,a),a)] 
Indicar lo que es verdad:
a. Fractional es subtipo de Ord
b. Floating es subtipo de Fractional 
c. Enum es un subtipo de Integral
d. Ord y Num son subtipos de Eq 
e. Real no es subtipo de Ord
El operador : se utiliza para
a. dividir enteros sin signo
b. dividir enteros con signo
c. Ninguna
d. construir listas 
e. secuenciar términos de una tupla
Indicar el valor que regresa la llamada (escribir sin espacios): prs [2,5,7,4,6,8,9]
prs :: [Int] -> [Int]
prs [] = []
prs (x:xs)
| even x = x : prs xs
| otherwise = prs xs
Respuesta: [2,4,6,8] 
Indicar el valor que regresa la llamada (escribir sin espacios): lM [[1,3,5],[2,7],[1,1,2],[3],[5]]
lM :: [[Int]] -> [[Int]]
lM xss = [xs | xs <- xss, sum xs == m]
where m = maximum [sum xs | xs <- xss]
Respuesta: [[1,3,5],[2,7]] 
Indicar el valor que regresa la llamada (escribir sin espacios): cb [[1,2],[3,4,5],[8]]
cb :: [[Int]] -> Bool
cb xss = and [or [even x | x <- xs] | xs <- xss]
Respuesta: True 
Indicar el valor que regresa la llamada (escribir sin espacios): pt 22 [1,3,34]
pt :: Ord a => a -> [a] -> Bool
pt _ [] = False
pt x (y:ys)
| x > y = pt x ys
| x == y = True
| otherwise = False
 
Respuesta: False 
Valor resultante de evaluar (\(x:xs)->x*2) [2,4,8]
Respuesta: 4 
¿Qué acción realiza la función splitAt sobre una lista?
a. Selecciona un elemento en una lista.
b.Divide la lista en dos partes, según una longitud dada. 
c. Indica el elemento de una posición indicada de la lista.
d. Ninguna de las otras.
e. Muestra un elemento de una lista.
Valor resultante de evaluar   (escribir sin espacios)
Respuesta: [3,4,3,4] 
Considerando que cada nueva definición de tipo, puede basarse en algún otro tipo definido, indique cuál/es
de las siguientes definiciones de tipos de datos es/son correcta/s:
a. type Amigo = (Nombre, Edad) 
b. type String = [Char]
c. type Nombre = String 
d. type Empleado = (Apellido, Nombre, Edad) 
e. type Apellido = [Char]
f. type Edad = Integer 
Sea:
algo 0 _ a = [a]
algo n f a = a : algo (n - 1) f (f a)
Calcula:
 
a. la lista [f a,f a,...,f a] de longitud n
b. la lista [a, f a, ..., fn a] 
c. la lista [a,a,...,a] de longitud n 
d. Ninguna
e. la enésima potencia de a
Dado el siguiente código:
 Indique qué falta en la última orden. 
Seleccione una:
Ninguna de las otras.
x + sumalista x
head x
head x + sumalista (tail x) 
1 + tail x
¿De qué forma sería posible definir una lista infinita de ceros?
a. Ninguna de las otras.
b. [0,0,0,..]
c. [0..0]
d. cero = 0:cero 
e. [0..]
Definir la función ‘elimPares’ que recibe una lista y devuelve otra, sin pares de valores consecutivos repetidos.
Por ejemplo: elimPares [1,2,3,3,4,5,5,5,6,7,3,8]      =>   [1,2,4,5,6,7,3,8]
Completar la línea que falta.
Respuesta: 
Función anónima que es tratada como si fuera un valor
a. implícita
b. Ninguna
c. pura
d. lambda 
e. curryficada
Enunciado que permite definir nuevos tipos de datos
a. Ninguna
b. data 
c. let
d. lambda
e. where
Prototipo completo, en formato currificado e indicando tipos específicos, de una función llamada así: (x, y) < f1
[1, 2, 3, 4, 5, 6] donde x, y son del mismo tipo.
Respuesta: asi :: (Int x,y)=>x->y->Int 
Indicar el valor que regresa la llamada (escribir sin espacios): pd [[1,3],[2,5]]
pd :: [[a]] -> [[a]]
pd [] = [[]]
pd (xs:xss) = [x:ys | x <- xs, ys <- pd xss]
Respuesta: [[1,2],[1,5],[3,2],[3,5]] 
Indicar el valor que regresa la llamada (escribir sin espacios): cp "abc" 3
cp :: [a] -> Int -> [a]
cp xs 0 = []
cp xs n = xs ++ cp xs (n-1)
Respuesta: "abcabcabc" 
Asocie el prototipo que corresponde a las siguientes funciones:  
argumentos: un operador de comparación y dos
valores comparables de cualquier tipo y regresa:
lista valores lógicos 
argumentos: dupla de una lista de valores
cualesquiera y un valor de un tipo diferente al de la
lista y regresa: una función que recibe de
argumento un valor del mismo tipo de la lista de la
dupla argumento, y regresa un valor lógico

argumentos: una función que recibe un argumento
real y devuelve un valor real, una lista de valores
reales y regresa: una lista de ternas de valores
reales

f :: (a -> a -> Bool) -> a -> a -> [Bool]
f :: ([a], b) -> (a -> Bool)
f :: (Float -> Float) -> [Float] -> [(Float, Float, Float)]
Sea una función:
fg1 n x = if n == 0 then [] else x : fg1 (n – 1)  x
Escribir la cabecera en formato currificado, usando tipología genérica (usar a como nombre genérico)
 
Respuesta: fg1 :: (Num a,b,c) => a->b->c 
La función debe regresar tantos 1 como pares de elementos que coincidan en ambas listas.
Indicar cuál es el enunciado que falta en el siguiente programa:
 
Seleccione una:
a. | q == [] \|\| k == [] = [a]
b. | q == [a] = (1 : nro k (tail q)) 
c. | k == [a] = (1 : nro k (tail q))
d. | length q == 1 = []
e. Ninguna de las opciones es correcta
Ejecutando la siguiente orden:
filter (>7) [9,3,8,6,7]
Se obtiene el resultado: [9,8]
¿Cuál sería la definición adecuada para la función filter?
a. filter :: (a -> Bool) -> [a] -> [a] 
b. filter :: (Bool ) -> (a) -> (a)
c. filter :: (Bool -> a) -> [a] -> [a]
d. Ninguna de las otras.
e. filter :: (Bool) -> [a] -> [a]
Indicar el valor que regresa la llamada (escribir sin espacios): df [5,3,8,7]
df :: Num a => [a] -> [a]
df xs = [a-b | (a,b) <- zip xs (tail xs)]
Respuesta: [2,-5,1] 
Palabra reservada que se usa para indicar una definición anidada dentro de una función
a. currificada
b. where 
c. let
d. prototype
e. Ninguna
Mecanismo de evaluación de valores que se hace sólo cuando es necesario 
a. Ninguna
b. off-line
c. lazy 
d. recursive
e. on-line
Navegación por el cuestionario
Ariel Alejandro Robles
Mostrar una página cada vez
Finalizar revisión
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25
26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43
UTN
https://www.campusvirtual.frm.utn.edu.ar/user/view.php?id=10209&course=78
https://www.campusvirtual.frm.utn.edu.ar/mod/quiz/review.php?attempt=301334&cmid=2043&showall=0
Paradigmas de Programación
Pregunta 1
Correcta
Puntúa 1,00
sobre 1,00
Marcar
pregunta
Pregunta 2
Incorrecta
Puntúa 0,00
sobre 1,00
Marcar
pregunta
Pregunta 3
Incorrecta
Puntúa 0,00
sobre 1,00
Marcar
pregunta
Pregunta 4
Incorrecta
Puntúa -0,10
sobre 1,00
Marcar
pregunta
Pregunta 5
Correcta
Puntúa 1,00
sobre 1,00
Marcar
pregunta
Pregunta 6
Correcta
Puntúa 1,00
sobre 1,00
Marcar
pregunta
Pregunta 7
Correcta
Puntúa 1,00
sobre 1,00
Marcar
pregunta
Pregunta 8
Correcta
Puntúa 1,00
sobre 1,00
Marcar
pregunta
Pregunta 9
Correcta
Puntúa 1,00
sobre 1,00
Marcar
pregunta
Pregunta 10
Incorrecta
Puntúa -0,10
sobre 1,00
Marcar
pregunta
Pregunta 11
Correcta
Puntúa 1,00
sobre 1,00
Marcar
pregunta
Pregunta 12
Correcta
Puntúa 1,00
sobre 1,00
Marcar
pregunta
Pregunta 13
Correcta
Puntúa 1,00
sobre 1,00
Marcar
pregunta
Pregunta 14
Correcta
Puntúa 1,00
sobre 1,00
Marcar
pregunta
Pregunta 15
Correcta
Puntúa 1,00
sobre 1,00
Marcar
pregunta
Pregunta 16
Correcta
Puntúa 1,00
sobre 1,00
Marcar
pregunta
Pregunta 17
Incorrecta
Puntúa 0,00
sobre 1,00
Marcar
pregunta
Pregunta 18
Incorrecta
Puntúa -0,10
sobre 1,00
Marcar
pregunta
Pregunta 19
Correcta
Puntúa 1,00
sobre 1,00
Marcar
pregunta
Pregunta 20
Incorrecta
Puntúa 0,00
sobre 1,00
Marcar
pregunta
Pregunta 21
Correcta
Puntúa 1,00
sobre 1,00
Marcar
pregunta
Pregunta 22
Correcta
Puntúa 1,00
sobre 1,00
Marcar
pregunta
Pregunta 23
Incorrecta
Puntúa 0,00
sobre 1,00
Marcar
pregunta
Pregunta 24
Incorrecta
Puntúa 0,00
sobre 1,00
Marcar
pregunta
Pregunta 25
Correcta
Puntúa 1,00
sobre 1,00
Marcar
pregunta
Pregunta 26
Correcta
Puntúa 1,00
sobre 1,00
Marcar
pregunta
Pregunta 27
Correcta
Puntúa 1,00
sobre 1,00
Marcar
pregunta
Pregunta 28
Incorrecta
Puntúa -0,10
sobre 1,00
Marcar
pregunta
Pregunta 29
Correcta
Puntúa 1,00
sobre 1,00
Marcar
pregunta
Pregunta 30
Incorrecta
Puntúa 0,00
sobre 1,00
Marcar
pregunta
Pregunta 31
Correcta
Puntúa 1,00
sobre 1,00
Marcar
pregunta
Pregunta 32
Incorrecta
Puntúa -0,10
sobre 1,00
Marcar
pregunta
Pregunta 33
Correcta
Puntúa 1,00
sobre 1,00
Marcar
pregunta
Pregunta 34
Incorrecta
Puntúa 0,00
sobre 1,00
Marcar
pregunta
Pregunta 35
Parcialmente
correcta
Puntúa 0,50
sobre 1,00
Marcar
pregunta
Pregunta 36
Incorrecta
Puntúa -0,10
sobre 1,00
Marcar
pregunta
Pregunta 37
Sin contestar
Puntúa como
1,00
Marcar
pregunta
Pregunta 38
Sin contestar
Puntúa como
1,00
Marcar
pregunta
Pregunta 39
Sin contestar
Puntúa como
1,00
Marcar
pregunta
Pregunta 40
Sin contestar
Puntúa como
1,00
Marcar
pregunta
Pregunta 41
Correcta
Puntúa 1,00
sobre 1,00
Marcar
pregunta
Pregunta 42
Sin contestar
Puntúa como
1,00
Marcar
pregunta
Pregunta 43
Sin contestar
Puntúa como
1,00
Marcar
pregunta
Finalizar revisión
Comenzado el Tuesday, 16 de November de 2021, 09:08
Estado Finalizado
Finalizado en Tuesday, 16 de November de 2021, 10:42
Tiempo empleado 1 hora 34 minutos
Puntos 21,90/43,00
Calificación 50,93 de 100,00
Indicar el valor que regresa la llamada (escribir sin espacios): cb [[1,2],[3,4,5],[8]]
cb :: [[Int]] -> Bool
cb xss = and [or [even x | x <- xs] | xs <- xss]
Respuesta: True �
g 0 _ = undefined 
g _ [] = [] 
g n xs = r1 : g (n - 1) r2 
where r1 = take n xs; r2 = drop n xs
Escribir la cabecera currificada, con tipos genéricos (usar a como nombre genérico)y específicos.
 
Respuesta: Eq a=>[a]->[[a][a]] �
Sea la función 'p' parametrizada con tipos genéricos (usar a como nombre genérico) , que al ser llamada devuelve lo que se indica y lo que hace es procesar aquellas
tuplas en las que coinciden los valores de los 1ros elementos :
p [((1,1),1),((1,2),2),((1,3),3),((2,1),2)] 2 => [(1,2),(2,1)]
 
Respuesta: p (Int a):: [((a,a),a),((a,a),a)] => [((a,a),a),((a,a),a)] �
Sea: 
algo 0 _ a = [a] 
algo n f a = a : algo (n - 1) f (f a)
Calcula:
 
a. la enésima potencia de a
b. la lista [f a,f a,...,f a] de longitud n
c. la lista [a, f a, ..., fn a] 
d. Ninguna
e. la lista [a,a,...,a] de longitud n �
¿Cuáles son los tres mecanismos de Haskell para definir funciones?
a. Ninguna de las otras.
b. parentizada, por patrones y currificada?
c. parentizada , currificada y lambda? �
d. parentizada, EBNF y currificada?
e. parentizada, con guardas y currificada? 
Indicar el valor que regresa la llamada (escribir sin espacios): sar ejArbol
data Arbol a = Hoja | Nodo a (Arbol a) (Arbol a) deriving (Show, Eq)
ejArbol :: Arbol Int
ejArbol = Nodo 2 (Nodo 5 (Nodo 3 Hoja Hoja) (Nodo 7 Hoja Hoja)) (Nodo 4 Hoja Hoja)
sar :: Num a => Arbol a -> a
sar Hoja = 0
sar (Nodo x i d) = x + sar i + sar d
Respuesta: 21 �
Valor resultante de evaluar (escribir sin espacios)
Respuesta: [1,2,3,3,4] �
Indicar el valor que regresa la llamada (escribir sin espacios): ip [2,5,7,4,6,8,9]
ip :: [Int] -> [Int]
ip [] = []
ip (x:xs)
| odd x = x : ip xs
| otherwise = ip xs
Respuesta: [5,7,9] �
El operador : se utiliza para 
a. dividir enteros sin signo
b. Ninguna
c. dividir enteros con signo
d. construir listas �
e. secuenciar términos de una tupla
¿De qué forma sería posible definir una lista infinita de ceros?
a. Ninguna de las otras.
b. [0..]
c. [0..0]
d. [0,0,0,..] �
e. cero = 0:cero
Categoría de funciones que utiliza Haskell
a. sin tipología de datos
b. Ninguna
c. de orden superior �
d. de orden inferior
e. binarias
La composición de dos funciones f y g se denota mediante f . g y se define mediante la ecuación:
a. ( . ) :: ( X -> Y) -> (Y -> X) -> (X->Y) (f . g) x = f(gx)
b. ( . ) :: ( X -> Y) -> (Y -> Z) -> (Z->Y) (f . g) x = f(gx)
c. ( . ) :: ( X -> Y) -> (Y -> Z) -> (X->Z) (f . g) x = f(gx)
d. ( . ) :: ( X -> Y) -> (Z -> X) -> (Z->Y) (f . g) x = f(gx) �
Enunciado que permite definir nuevos tipos de datos
a. lambda
b. Ninguna
c. let
d. data �
e. where
Dos funciones son iguales, si tienen la misma Imagen para argumentos iguales. A esto en Haskell se lo denomina:
a. Polimorfismo
b. Inferencia
c. Extensionabilidad �
d. Ninguna de las otras opciones
e. cardinalidad
Indicar el valor que regresa la llamada (escribir sin espacios): pmo 5 
pmo :: Int -> Integer 
pmo n = prm !! (n-1) 
prm :: [Integer] 
prm = 2 : [n | n <- [3,5..], ePr n] 
ePr :: Integer-> Bool 
ePr n = [x | x <- [1..n], rem n x == 0] == [1,n]
Respuesta: 11 �
Teniendo el código:
¿Qué ocurre al ejecutar con la línea siguiente? 
Para: p 1372
Seleccione una:
a. regresa []
b. regresa [false, false, false, true]
c. no regresa nada
d. regresa [2,2,7,7,7] �
e. Error de sintaxis en p’
Indicar el valor que regresa la llamada (escribir sin espacios): 
comp [2,3,4,4,5,6,7,7,8,9]
 
comp [] = []
comp (x:xs) = compAux xs x [x]
compAux :: (Eq a) => [a] -> a -> [a] -> [a]
compAux (x:xs) y acc
 | x == y = compAux xs y acc
 | x /= y = compAux xs x (acc ++ [x])
 
Respuesta: compAux[]9((((((([2]++[3])++[4])++[5])++[6]++[7])++[8])++[9]) �
Dado el siguiente código:
 Indique qué falta en la última orden. 
Seleccione una:
head x + sumalista (tail x)
x + sumalista x �
Ninguna de las otras.
1 + tail x
head x
Indicar lo que es verdad:
a. Enum es un subtipo de Integral
b. Fractional es subtipo de Ord
c. Floating es subtipo de Fractional �
d. Ord y Num son subtipos de Eq �
e. Real no es subtipo de Ord
Prototipo completo, en forma currificada de la función f1 que es llamada así: if (f1 (sin) (exp)) then ...
Respuesta: f1::(Num a,b )=>a->b �
Indicar el valor que regresa la llamada (escribir sin espacios): pd [[1,3],[2,5]] 
pd :: [[a]] -> [[a]] 
pd [] = [[]] 
pd (xs:xss) = [x:ys | x <- xs, ys <- pd xss]
Respuesta: [[1,2],[1,5],[3,2],[3,5]] �
Indicar el valor que regresa la llamada (escribir sin espacios): pt 22 [1,3,34]
pt :: Ord a => a -> [a] -> Bool
pt _ [] = False
pt x (y:ys)
| x > y = pt x ys
| x == y = True
| otherwise = False
 
Respuesta: False �
Indicar el valor que regresa la llamada (escribir sin espacios): lM [[1,3,5],[2,7],[1,1,2],[3],[5]] 
lM :: [[Int]] -> [[Int]] 
lM xss = [xs | xs <- xss, sum xs == m] 
where m = maximum [sum xs | xs <- xss]
Respuesta: Error de �
Sea la función 'g' que al ser llamada devuelve lo que se muestra. Indicar la cabecera parametrizada con tipos genéricos (suponiendo que los nombres genéricos
corresponden a para ^ y b para even), 
g (^2) even [1..9] => [(2,4),(4,16),(6,36),(8,64)]
 
 
Respuesta: g::(Num a,b)->[(int,int),(int,int),(int,int] �
Si definimos la función: f (x, y) = (a+1) * (a+2) where a =(x+y)/2
¿Cuál de las siguientes definiciones de tipo se corresponden con ella?
a. f :: Bool -> String
b. f:: Float -> Float -> Float
c. f:: Int -> Int -> Int
d. f:: (Float, Float) -> Float �
Conjunto de tamaño fijo con elementos de distintos tipos
a. type
b. arreglo
c. tupla �
d. lista hetereogénea
e. Ninguna
Al evaluar: 2<3<4 
Genera el mensaje: 
<interactive>:65:1: 
Precedence parsing error 
cannot mix ‘<’ [infix 4] and ‘<’ [infix 4] in the same infix expression
a. Se debe re-escribir así (2<3<4)
b. Se debe re-escribir así 2<(3<4)
c. Se debe re-escribir así (2<3)<4
d. No se puede arreglar usando paréntesis �
e. Ninguna
En Haskell, a un conjunto de definiciones se la denomina:
a. Ninguna de las otras. �
b. Guión
c. Regla
d. Predicado
¿Qué acción realiza la función splitAt sobre una lista?
a. Selecciona un elemento en una lista.
b. Muestra un elemento de una lista.
c. Divide la lista en dos partes, según una longitud dada. �
d. Indica el elemento de una posición indicada de la lista.
e. Ninguna de las otras.
Valor resultante de evaluar (escribir sin espacios)
Respuesta: variable y undefined �
Apellido del investigador del creador de Haskell
a. Church
b. Minsky
c. Ninguna
d. Curry �
e. McCarthy
La función debe regresar los valores consecutivos diferentes. 
Indicar cuál es el enunciado que falta en el siguiente progama: 
 
 
 
Seleccione una:
a. pri = seg = (pri, seg) : difer (tail k)
b. pri /= seg = (fst k, snd k) : difer (tail k) �
c. pri == seg = (pri, seg) : difer k
d. pri /= seg = (pri, seg) : difer (tail k)
e. pri == seg = (fst k, snd k) : difer (tail k)
Palabra reservada que se usa para indicar una definición anidada dentro de una función
a. Ninguna
b. currificada
c. let
d. prototype
e. where �
La función debe duplicar los valores de una lista. 
Indicar cuál es el enunciado que falta en el siguiente progama: 
 
 
Seleccione una:
a. copy (c : q) = (c : copy q) �
b. copy length x == 1 = [x]
c. copy (c : q) = (copy q)
d. copy [x] = [x, x]
e. copy [x] = copy [x]
Considerando que cada nueva definición de tipo, puede basarse en algún otro tipo definido, indique cuál/es de las siguientes definiciones de tipos de datos es/son
correcta/s:
a. type Apellido = [Char] �
b. type Empleado = (Apellido, Nombre, Edad) �
c. type Nombre = String �
d. type Amigo = (Nombre, Edad) �
e. type Edad = Integer �
f. type String = [Char] �
Sea: 
algo 0 _ a = [a] 
algo n f a = a : algo (n - 1) f (f a) 
El tipo inferido es:
 
a. algo :: Num a => Int->(a->a)->a->[a]
b. algo :: a->(a->a)->a->[a]
c. Ninguna
d. algo :: Num a => a->(a->a)->a->[a] �
e. algo :: Int->(a->a)->a->[a]
Indicar el valor que regresa la llamada (escribir sin espacios): dp [7,2,5] 
dp :: [a] -> [a] 
dp [] = [] 
dp (x:xs) = x:x:dp xs
Respuesta: �
Indicar el valor que regresa la llamada (escribir sin espacios): prs [2,5,7,4,6,8,9]
prs :: [Int] -> [Int]
prs [] = []
prs (x:xs)| even x = x : prs xs
| otherwise = prs xs
Respuesta: �
Valor resultante de evaluar (escribir sin espacios)
Respuesta: �
Sea la siguiente definición:
Completar la línea que falta.
Respuesta: �
Denominación de las funciones que reciben otras funciones como argumento o las regresan
a. anidadas
b. currificadas
c. puras
d. orden superior �
e. orden inferior
Indicar el valor que regresa la llamada (escribir sin espacios): sCf 325 
sCf :: Integer -> Integer 
sCf n 
| n < 10 = n 
| otherwise = sCf(div n 10) + n ‘rem‘ 10
Respuesta: �
Sea una función que es llamada de las siguientes formas:
mFunc [2,3,5,7,9] => ([2,3],[5,7,9])
mFunc ['a', 'b', 'c', 'd', 'e'] => ("ab","cde")
mFunc [2.3, 7.3, 5.0, 7.1, 2.9] => ([2.3,7.3],[5.0,7.1,2.9])
Escribir la cabecera, en formato currificado.
Respuesta: �
Navegación por el cuestionario
Julian Esteban Serralta
Mostrar una página cada vez
Finalizar revisión
1 2 3 4 5 6 7 8 9
10 11 12 13 14 15 16 17 18
19 20 21 22 23 24 25 26 27
28 29 30 31 32 33 34 35 36
37 38 39 40 41 42 43
UTN
https://www.campusvirtual.frm.utn.edu.ar/user/view.php?id=10258&course=78
https://www.campusvirtual.frm.utn.edu.ar/mod/quiz/review.php?attempt=301239&cmid=2043&showall=0
Salta al contenido principal
UTN UTN
Paradigmas de Programación
Comenzado el Tuesday, 16 de November de 2021, 21:22
Estado Finalizado
Finalizado en Tuesday, 16 de November de 2021, 22:01
Tiempo empleado 38 minutos 27 segundos
Puntos 33,50/43,00
Calificación 77,91 de 100,00
Pregunta 1
Correcta
Puntúa 1,00 sobre 1,00
No marcadasMarcar pregunta
Enunciado de la pregunta
El siguiente código permite eliminar la cabeza de una lista:
Si se desea eliminar el último elemento de la lista,
¿Cómo se debería modificar?
Seleccione una:
a.
|otherwise = (head k)
b.
|otherwise = (head k: quehago(tail k))
c.
|otherwise = (head k : quehago k)
d.
|otherwise = (quehago k)
e.
Ninguna de las otras.
Pregunta 2
Correcta
Puntúa 1,00 sobre 1,00
No marcadasMarcar pregunta
Enunciado de la pregunta
Enunciado que permite definir nuevos tipos de datos
a.
lambda
b.
data
c.
where
d.
let
e.
Ninguna
Pregunta 3
Correcta
Puntúa 1,00 sobre 1,00
No marcadasMarcar pregunta
Enunciado de la pregunta
Conjunto de tamaño fijo con elementos de distintos tipos
a.
type
b.
arreglo
c.
tupla
d.
lista hetereogénea
e.
Ninguna
Pregunta 4
Correcta
Puntúa 1,00 sobre 1,00
No marcadasMarcar pregunta
Enunciado de la pregunta
¿Cuáles son los tres mecanismos de Haskell para definir funciones?
a.
parentizada, EBNF y currificada?
b.
parentizada, por patrones y currificada?
c.
parentizada, con guardas y currificada? 
d.
parentizada , currificada y lambda?
e.
Ninguna de las otras.
Pregunta 5
Correcta
Puntúa 1,00 sobre 1,00
No marcadasMarcar pregunta
Enunciado de la pregunta
¿Qué respuesta produce la siguiente consulta?
 
Seleccione una:
a.
[ 7 ]
b.
[5,2,5]
c.
Ninguna de las otras.
d.
[7,5,5,2,5]
Pregunta 6
Correcta
Puntúa 1,00 sobre 1,00
No marcadasMarcar pregunta
Enunciado de la pregunta
Indicar el valor que regresa la llamada (escribir sin espacios): 
comp [2,3,4,4,5,6,7,7,8,9]
 
comp [] = []
comp (x:xs) = compAux xs x [x]
compAux :: (Eq a) => [a] -> a -> [a] -> [a]
compAux (x:xs) y acc
 | x == y = compAux xs y acc
 | x /= y = compAux xs x (acc ++ [x])
 
Respuesta: [2,3,4,5,6,7,8,9]
Pregunta 7
Incorrecta
Puntúa 0,00 sobre 1,00
No marcadasMarcar pregunta
Enunciado de la pregunta
La función debe analizar si una lista forma parte de otra. 
Indicar cuál es el enunciado que falta o está mal, en el siguiente programa:
 
 
Seleccione una:
a.
| otherwise = True
b.
| otherwise = esParte (head k) (tail q)
c.
| otherwise = esParte (tail k) (tail q)
d.
Ninguna de la opciones es correcta
e.
| head k /= head q = esParte k (tail q)
Pregunta 8
Correcta
Puntúa 1,00 sobre 1,00
No marcadasMarcar pregunta
Enunciado de la pregunta
Indicar el valor que regresa la llamada (escribir sin espacios): cp "abc" 3 
cp :: [a] -> Int -> [a] 
cp xs 0 = []
cp xs n = xs ++ cp xs (n-1)
Respuesta: "abcabcabc"
Pregunta 9
Correcta
Puntúa 1,00 sobre 1,00
No marcadasMarcar pregunta
Enunciado de la pregunta
Indicar el valor que regresa la llamada (escribir sin espacios): pmo 5 
pmo :: Int -> Integer 
pmo n = prm !! (n-1) 
prm :: [Integer] 
prm = 2 : [n | n <- [3,5..], ePr n] 
ePr :: Integer-> Bool 
ePr n = [x | x <- [1..n], rem n x == 0] == [1,n]
Respuesta: 11
Pregunta 10
Incorrecta
Puntúa 0,00 sobre 1,00
No marcadasMarcar pregunta
Enunciado de la pregunta
Indicar el valor que regresa la llamada (escribir sin espacios): crte [4,3,5,2,7] 
crte (x:y:zs) 
| x < y = Just y 
| otherwise = crte (y:zs) 
crte _ = Nothing
Respuesta: Just5
Pregunta 11
Correcta
Puntúa 1,00 sobre 1,00
No marcadasMarcar pregunta
Enunciado de la pregunta
Función anónima que es tratada como si fuera un valor
a.
implícita
b.
pura
c.
lambda
d.
curryficada
e.
Ninguna
Pregunta 12
Incorrecta
Puntúa 0,00 sobre 1,00
No marcadasMarcar pregunta
Enunciado de la pregunta
¿Son equivalentes las siguientes definiciones?
fun :: Num a => [a] -> [a]-> [a] y fun :: [Int]->[Int]->[Int]
a.
En lugar de Num a => debería indicarse Real a => 
b.
En lugar de Num a => debería indicarse Int a =>
c.
Depende del tipo específico de 'a'
d.
Si
e.
No
Pregunta 13
Correcta
Puntúa 1,00 sobre 1,00
No marcadasMarcar pregunta
Enunciado de la pregunta
Denominación de las funciones que no tienen efectos laterales
a.
puras
b.
Ninguna
c.
unarias
d.
lambda
e.
de orden superior
Pregunta 14
Incorrecta
Puntúa 0,00 sobre 1,00
No marcadasMarcar pregunta
Enunciado de la pregunta
Indicar el prototipo usando tipos genéricos (usar a para sin y b para <) según corresponda, de una función que es llamada así:
f1 (sin) (<) > 3.14
 
Respuesta: fi :: a -> b -> Float
Pregunta 15
Correcta
Puntúa 1,00 sobre 1,00
No marcadasMarcar pregunta
Enunciado de la pregunta
Indicar el valor que regresa la llamada (escribir sin espacios): lM [[1,3,5],[2,7],[1,1,2],[3],[5]] 
lM :: [[Int]] -> [[Int]] 
lM xss = [xs | xs <- xss, sum xs == m] 
where m = maximum [sum xs | xs <- xss]
Respuesta: [[1,3,5],[2,7]]
Pregunta 16
Correcta
Puntúa 1,00 sobre 1,00
No marcadasMarcar pregunta
Enunciado de la pregunta
Indicar el valor que regresa la llamada (escribir sin espacios): ic 3 [7,3,5,3]
ic :: Eq a => a -> [a] -> Int
ic _ [] = 0
ic x (y:ys)
| x == y = 1 + ic x ys
| otherwise = ic x ys
Respuesta: 2
Pregunta 17
Correcta
Puntúa 1,00 sobre 1,00
No marcadasMarcar pregunta
Enunciado de la pregunta
Valor resultante de evaluar (escribir sin espacios)
Respuesta: Error
Pregunta 18
Correcta
Puntúa 1,00 sobre 1,00
No marcadasMarcar pregunta
Enunciado de la pregunta
La composición de dos funciones f y g se denota mediante f . g y se define mediante la ecuación:
a.
( . ) :: ( X -> Y) -> (Y -> X) -> (X->Y) (f . g) x = f(gx)
b.
( . ) :: ( X -> Y) -> (Z -> X) -> (Z->Y) (f . g) x = f(gx)
c.
( . ) :: ( X -> Y) -> (Y -> Z) -> (X->Z) (f . g) x = f(gx)
d.
( . ) :: ( X -> Y) -> (Y -> Z) -> (Z->Y) (f . g) x = f(gx)
Pregunta 19
Correcta
Puntúa 1,00 sobre 1,00
No marcadasMarcar pregunta
Enunciado de la pregunta
Dos funciones son iguales, si tienen la misma Imagen para argumentos iguales. A esto en Haskell se lo denomina:
a.
Inferencia
b.
Ninguna de las otras opciones
c.
Extensionabilidad
d.
Polimorfismo
e.
cardinalidad
Pregunta 20
Incorrecta
Puntúa -0,50 sobre 1,00
No marcadasMarcar pregunta
Enunciado de la pregunta
En Haskell, a un conjunto de definiciones se la denomina:
a.
Ninguna de las otras.
b.
Predicado
c.
Guión
d.
Regla
Pregunta 21
Correcta
Puntúa 1,00 sobre 1,00
No marcadasMarcar pregunta
Enunciado de la pregunta
Asocie el prototipo que corresponde a las siguientes funciones: 
argumentos: un operador de comparación y dos valores comparables de cualquier tipo y regresa: lista valores lógicos Respuesta 1
argumentos: una función que recibe un argumento real y devuelve un valor real, unalista de valores reales y regresa: una lista de ternas de valores reales Respuesta 2
argumentos: dupla de una lista de valores cualesquiera y un valor de un tipo diferente al de la lista y regresa: una función que recibe de argumento un valor
del mismo tipo de la lista de la dupla argumento, y regresa un valor lógico
Respuesta 3
Pregunta 22
Sin contestar
Puntúa como 1,00
No marcadasMarcar pregunta
Enunciado de la pregunta
Sea la función 'g' que al ser llamada devuelve lo que se muestra. Indicar la cabecera parametrizada con tipos genéricos (suponiendo que los nombres genéricos corresponden a para ^ y b para even), 
g (^2) even [1..9] => [(2,4),(4,16),(6,36),(8,64)]
 
 
Respuesta: 
Pregunta 23
Correcta
Puntúa 1,00 sobre 1,00
No marcadasMarcar pregunta
Enunciado de la pregunta
Indicar lo que es verdad:
a.
Enum es un subtipo de Integral
b.
Ord y Num son subtipos de Eq
c.
Floating es subtipo de Fractional
d.
Real no es subtipo de Ord
e.
Fractional es subtipo de Ord
Pregunta 24
Correcta
Puntúa 1,00 sobre 1,00
No marcadasMarcar pregunta
Enunciado de la pregunta
Denominación de las funciones que reciben otras funciones como argumento o las regresan
a.
puras
b.
currificadas
c.
anidadas
d.
orden superior
e.
orden inferior
Pregunta 25
Correcta
Puntúa 1,00 sobre 1,00
No marcadasMarcar pregunta
Enunciado de la pregunta
Indicar el valor que regresa la llamada (escribir sin espacios): dp [7,2,5] 
dp :: [a] -> [a] 
dp [] = [] 
dp (x:xs) = x:x:dp xs
Respuesta: [7,7,2,2,5,5]
Pregunta 26
Correcta
Puntúa 1,00 sobre 1,00
No marcadasMarcar pregunta
Enunciado de la pregunta
Asocie el resultado que le corresponde:
[ x|x <- [1..], x `mod` 2 == 0, x `mod` 3 == 0] Respuesta 1
[(x,y,z)| x <- [1..1],y <-[x..2],z <-[x..y]] Respuesta 2
[x| n <- [3..5], x <- [1..n], x `mod` 3 == 0] Respuesta 3
[ x | x <- [1..y], y <- [1..], x * y] Respuesta 4
[c | c <- [1..9], c <= 3 || c >= 6] Respuesta 5
[x*2 | x <- [1..3], x*2 >= 6] Respuesta 6
Pregunta 27
Correcta
Puntúa 1,00 sobre 1,00
No marcadasMarcar pregunta
Enunciado de la pregunta
El operador : se utiliza para 
a.
dividir enteros con signo
b.
Ninguna
c.
construir listas
d.
secuenciar términos de una tupla
e.
dividir enteros sin signo
Pregunta 28
Correcta
Puntúa 1,00 sobre 1,00
No marcadasMarcar pregunta
Enunciado de la pregunta
Indicar el valor que regresa la llamada (escribir sin espacios): ip [2,5,7,4,6,8,9]
ip :: [Int] -> [Int]
ip [] = []
ip (x:xs)
| odd x = x : ip xs
| otherwise = ip xs
Respuesta: [5,7,9]
Pregunta 29
Sin contestar
Puntúa como 1,00
No marcadasMarcar pregunta
Enunciado de la pregunta
Prototipo completo, en forma currificada de la función f1 que es llamada así: if (f1 (sin) (exp)) then ...
Respuesta: 
Pregunta 30
Correcta
Puntúa 1,00 sobre 1,00
No marcadasMarcar pregunta
Enunciado de la pregunta
Indicar el valor que regresa la llamada (escribir sin espacios): prs [2,5,7,4,6,8,9]
prs :: [Int] -> [Int]
prs [] = []
prs (x:xs)
| even x = x : prs xs
| otherwise = prs xs
Respuesta: [2,4,6,8]
Pregunta 31
Correcta
Puntúa 1,00 sobre 1,00
No marcadasMarcar pregunta
Enunciado de la pregunta
¿De qué forma sería posible definir una lista infinita de ceros?
a.
cero = 0:cero
b.
[0,0,0,..]
c.
[0..]
d.
Ninguna de las otras.
e.
[0..0]
Pregunta 32
Correcta
Puntúa 1,00 sobre 1,00
No marcadasMarcar pregunta
Enunciado de la pregunta
Indicar el valor que regresa la llamada (escribir sin espacios): df [5,3,8,7] 
df :: Num a => [a] -> [a] 
df xs = [a-b | (a,b) <- zip xs (tail xs)]
Respuesta: [2,-5,1]
Pregunta 33
Correcta
Puntúa 1,00 sobre 1,00
No marcadasMarcar pregunta
Enunciado de la pregunta
Indicar el valor que regresa la llamada (escribir sin espacios): cb [[1,2],[3,4,5],[8]]
cb :: [[Int]] -> Bool
cb xss = and [or [even x | x <- xs] | xs <- xss]
Respuesta: True
Pregunta 34
Correcta
Puntúa 1,00 sobre 1,00
No marcadasMarcar pregunta
Enunciado de la pregunta
Apellido del investigador del creador de Haskell
a.
Curry
b.
Ninguna
c.
Church
d.
Minsky
e.
McCarthy
Pregunta 35
Correcta
Puntúa 1,00 sobre 1,00
No marcadasMarcar pregunta
Enunciado de la pregunta
Dado el siguiente código:
¿Qué se obtiene al ejecutar: esto ['a','b','c','d','e']?
Seleccione una respueta:
 
 
 
Seleccione una:
a.
Ninguna de las otras.
b.
null
c.
'e'
d.
'a'
e.
lista vacía
Pregunta 36
Correcta
Puntúa 1,00 sobre 1,00
No marcadasMarcar pregunta
Enunciado de la pregunta
Palabra reservada que se usa para indicar una definición anidada dentro de una función
a.
currificada
b.
where
c.
prototype
d.
Ninguna
e.
let
Pregunta 37
Incorrecta
Puntúa 0,00 sobre 1,00
No marcadasMarcar pregunta
Enunciado de la pregunta
Sea una función que es llamada de las siguientes formas:
mFunc [2,3,5,7,9] => ([2,3],[5,7,9])
mFunc ['a', 'b', 'c', 'd', 'e'] => ("ab","cde")
mFunc [2.3, 7.3, 5.0, 7.1, 2.9] => ([2.3,7.3],[5.0,7.1,2.9])
Escribir la cabecera, en formato currificado.
Respuesta: mFunc :: [a] -> ([b],[b])
Pregunta 38
Correcta
Puntúa 1,00 sobre 1,00
No marcadasMarcar pregunta
Enunciado de la pregunta
La función debe regresar los valores consecutivos diferentes. 
Indicar cuál es el enunciado que falta en el siguiente progama: 
 
Seleccione una:
a.
pri = seg = (pri, seg) : difer (tail k)
b.
pri == seg = (pri, seg) : difer k
c.
pri == seg = (fst k, snd k) : difer (tail k)
d.
pri /= seg = (fst k, snd k) : difer (tail k)
e.
pri /= seg = (pri, seg) : difer (tail k)
Pregunta 39
Correcta
Puntúa 1,00 sobre 1,00
No marcadasMarcar pregunta
Enunciado de la pregunta
Sea: 
algo 0 _ a = [a] 
algo n f a = a : algo (n - 1) f (f a) 
El tipo inferido es:
 
a.
algo :: a->(a->a)->a->[a]
b.
algo :: Num a => Int->(a->a)->a->[a]
c.
algo :: Int->(a->a)->a->[a]
d.
algo :: Num a => a->(a->a)->a->[a]
e.
Ninguna
Pregunta 40
Correcta
Puntúa 1,00 sobre 1,00
No marcadasMarcar pregunta
Enunciado de la pregunta
Categoría de funciones que utiliza Haskell
a.
de orden superior
b.
binarias
c.
de orden inferior
d.
sin tipología de datos
e.
Ninguna
Pregunta 41
Correcta
Puntúa 1,00 sobre 1,00
No marcadasMarcar pregunta
Enunciado de la pregunta
Valor resultante de evaluar (escribir sin espacios)
Respuesta: [(1,2),(2,4),(3,6),(4,8),(5,10)]
Pregunta 42
Sin contestar
Puntúa como 1,00
No marcadasMarcar pregunta
Enunciado de la pregunta
Sea la función 'p' parametrizada con tipos genéricos (usar a como nombre genérico) , que al ser llamada devuelve lo que se indica y lo que hace es procesar aquellas tuplas en las que coinciden los valores de los
1ros elementos :
p [((1,1),1),((1,2),2),((1,3),3),((2,1),2)] 2 => [(1,2),(2,1)]
 
Respuesta: 
Pregunta 43
Correcta
Puntúa 1,00 sobre 1,00
No marcadasMarcar pregunta
Enunciado de la pregunta
Ejecutando la siguiente orden:
filter (>7) [9,3,8,6,7]
Se obtiene el resultado: [9,8]
¿Cuál sería la definición adecuada para la función filter?
a.
filter :: (a -> Bool) -> [a] -> [a]
b.
filter :: (Bool -> a) -> [a] -> [a]
c.
filter :: (Bool) -> [a] -> [a]
d.
filter :: (Bool ) -> (a) -> (a)
e.
Ninguna de las otras.
Finalizar revisión
Salta Navegación por el cuestionario
Navegación por el cuestionario
Luciana Fernanda Maldonado Vargas
Pregunta 1 Esta página Pregunta 2 Esta página Pregunta 3 Esta página Pregunta 4 Esta página Pregunta 5 Esta página Pregunta 6 Esta página Pregunta 7 Esta página Pregunta 8 Esta página Pregunta 9 Esta
página Pregunta 10 Esta página Pregunta 11 Esta página Pregunta 12 Esta página Pregunta 13 Esta página Pregunta 14 Esta página Pregunta 15 Esta página Pregunta 16 Esta página Pregunta 17 Esta página
Pregunta 18 Esta página Pregunta 19 Esta página Pregunta 20 Esta página Pregunta 21 Esta página Pregunta 22 Esta página Pregunta 23 Esta página Pregunta 24 Esta página Pregunta 25 Esta página Pregunta
26 Esta página Pregunta 27 Esta página Pregunta 28 Esta página Pregunta 29 Esta página Pregunta 30 Esta página Pregunta 31 Esta página Pregunta 32 Esta página Pregunta 33 Esta página Pregunta 34 Estapágina Pregunta 35 Esta página Pregunta 36 Esta página Pregunta 37 Esta página Pregunta 38 Esta página Pregunta 39 Esta página Pregunta 40 Esta página Pregunta 41 Esta página Pregunta 42 Esta página
Pregunta 43 Esta página
Mostrar una página cada vez Finalizar revisión
f :: (a -> a -> Bool) -> a -> a -> [Bool]
f :: (Float -> Float) -> [Float] -> [(Float, Float, Float)]
f :: ([a], b) -> (a -> Bool)
lista infinita
[(1,1,1),(1,2,1),(1,2,2)]
[3,3,3]
error
[1,2,3,6,7,8,9]
[6]
https://www.campusvirtual.frm.utn.edu.ar/mod/quiz/review.php?attempt=301811&cmid=2043#maincontent
https://www.campusvirtual.frm.utn.edu.ar/mod/quiz/review.php?attempt=301811&cmid=2043#sb-1
https://www.campusvirtual.frm.utn.edu.ar/user/view.php?id=10441&course=78
https://www.campusvirtual.frm.utn.edu.ar/mod/quiz/review.php?attempt=301811&cmid=2043#
https://www.campusvirtual.frm.utn.edu.ar/mod/quiz/review.php?attempt=301811&cmid=2043#question-410499-32
https://www.campusvirtual.frm.utn.edu.ar/mod/quiz/review.php?attempt=301811&cmid=2043#question-410499-22
https://www.campusvirtual.frm.utn.edu.ar/mod/quiz/review.php?attempt=301811&cmid=2043#question-410499-18
https://www.campusvirtual.frm.utn.edu.ar/mod/quiz/review.php?attempt=301811&cmid=2043#question-410499-9
https://www.campusvirtual.frm.utn.edu.ar/mod/quiz/review.php?attempt=301811&cmid=2043#question-410499-17
https://www.campusvirtual.frm.utn.edu.ar/mod/quiz/review.php?attempt=301811&cmid=2043#question-410499-8
https://www.campusvirtual.frm.utn.edu.ar/mod/quiz/review.php?attempt=301811&cmid=2043#question-410499-26
https://www.campusvirtual.frm.utn.edu.ar/mod/quiz/review.php?attempt=301811&cmid=2043#question-410499-40
https://www.campusvirtual.frm.utn.edu.ar/mod/quiz/review.php?attempt=301811&cmid=2043#question-410499-27
https://www.campusvirtual.frm.utn.edu.ar/mod/quiz/review.php?attempt=301811&cmid=2043#question-410499-35
https://www.campusvirtual.frm.utn.edu.ar/mod/quiz/review.php?attempt=301811&cmid=2043#question-410499-30
https://www.campusvirtual.frm.utn.edu.ar/mod/quiz/review.php?attempt=301811&cmid=2043#question-410499-28
https://www.campusvirtual.frm.utn.edu.ar/mod/quiz/review.php?attempt=301811&cmid=2043#question-410499-14
https://www.campusvirtual.frm.utn.edu.ar/mod/quiz/review.php?attempt=301811&cmid=2043#question-410499-36
https://www.campusvirtual.frm.utn.edu.ar/mod/quiz/review.php?attempt=301811&cmid=2043#question-410499-31
https://www.campusvirtual.frm.utn.edu.ar/mod/quiz/review.php?attempt=301811&cmid=2043#question-410499-2
https://www.campusvirtual.frm.utn.edu.ar/mod/quiz/review.php?attempt=301811&cmid=2043#question-410499-29
https://www.campusvirtual.frm.utn.edu.ar/mod/quiz/review.php?attempt=301811&cmid=2043#question-410499-19
https://www.campusvirtual.frm.utn.edu.ar/mod/quiz/review.php?attempt=301811&cmid=2043#question-410499-21
https://www.campusvirtual.frm.utn.edu.ar/mod/quiz/review.php?attempt=301811&cmid=2043#question-410499-38
https://www.campusvirtual.frm.utn.edu.ar/mod/quiz/review.php?attempt=301811&cmid=2043#question-410499-10
https://www.campusvirtual.frm.utn.edu.ar/mod/quiz/review.php?attempt=301811&cmid=2043#question-410499-43
https://www.campusvirtual.frm.utn.edu.ar/mod/quiz/review.php?attempt=301811&cmid=2043#question-410499-33
https://www.campusvirtual.frm.utn.edu.ar/mod/quiz/review.php?attempt=301811&cmid=2043#question-410499-34
https://www.campusvirtual.frm.utn.edu.ar/mod/quiz/review.php?attempt=301811&cmid=2043#question-410499-3
https://www.campusvirtual.frm.utn.edu.ar/mod/quiz/review.php?attempt=301811&cmid=2043#question-410499-41
https://www.campusvirtual.frm.utn.edu.ar/mod/quiz/review.php?attempt=301811&cmid=2043#question-410499-39
https://www.campusvirtual.frm.utn.edu.ar/mod/quiz/review.php?attempt=301811&cmid=2043#question-410499-12
https://www.campusvirtual.frm.utn.edu.ar/mod/quiz/review.php?attempt=301811&cmid=2043#question-410499-1
https://www.campusvirtual.frm.utn.edu.ar/mod/quiz/review.php?attempt=301811&cmid=2043#question-410499-25
https://www.campusvirtual.frm.utn.edu.ar/mod/quiz/review.php?attempt=301811&cmid=2043#question-410499-24
https://www.campusvirtual.frm.utn.edu.ar/mod/quiz/review.php?attempt=301811&cmid=2043#question-410499-20
https://www.campusvirtual.frm.utn.edu.ar/mod/quiz/review.php?attempt=301811&cmid=2043#question-410499-42
https://www.campusvirtual.frm.utn.edu.ar/mod/quiz/review.php?attempt=301811&cmid=2043#question-410499-5
https://www.campusvirtual.frm.utn.edu.ar/mod/quiz/review.php?attempt=301811&cmid=2043#question-410499-16
https://www.campusvirtual.frm.utn.edu.ar/mod/quiz/review.php?attempt=301811&cmid=2043#question-410499-11
https://www.campusvirtual.frm.utn.edu.ar/mod/quiz/review.php?attempt=301811&cmid=2043#question-410499-7
https://www.campusvirtual.frm.utn.edu.ar/mod/quiz/review.php?attempt=301811&cmid=2043#question-410499-15
https://www.campusvirtual.frm.utn.edu.ar/mod/quiz/review.php?attempt=301811&cmid=2043#question-410499-37
https://www.campusvirtual.frm.utn.edu.ar/mod/quiz/review.php?attempt=301811&cmid=2043#question-410499-4
https://www.campusvirtual.frm.utn.edu.ar/mod/quiz/review.php?attempt=301811&cmid=2043#question-410499-13
https://www.campusvirtual.frm.utn.edu.ar/mod/quiz/review.php?attempt=301811&cmid=2043#question-410499-23
https://www.campusvirtual.frm.utn.edu.ar/mod/quiz/review.php?attempt=301811&cmid=2043&showall=0
Paradigmas de Programación
Pregunta 1
Correcta
Puntúa 1,00
sobre 1,00
Marcar
pregunta
Pregunta 2
Incorrecta
Puntúa -0,20
sobre 1,00
Marcar
pregunta
Pregunta 3
Incorrecta
Puntúa -0,20
sobre 1,00
Marcar
pregunta
Pregunta 4
Incorrecta
Puntúa -0,20
sobre 1,00
Marcar
pregunta
Pregunta 5
Correcta
Puntúa 1,00
sobre 1,00
Marcar
pregunta
Pregunta 6
Correcta
Puntúa 1,00
sobre 1,00
Marcar
pregunta
Pregunta 7
Incorrecta
Puntúa -0,20
sobre 1,00
Marcar
pregunta
Pregunta 8
Incorrecta
Puntúa -0,20
sobre 1,00
Marcar
pregunta
Pregunta 9
Correcta
Puntúa 1,00
sobre 1,00
Marcar
pregunta
Pregunta 10
Correcta
Puntúa 1,00
sobre 1,00
Marcar
pregunta
Pregunta 11
Correcta
Puntúa 1,00
sobre 1,00
Marcar
pregunta
Pregunta 12
Correcta
Puntúa 1,00
sobre 1,00
Marcar
pregunta
Pregunta 13
Parcialmente
correcta
Puntúa 0,30
sobre 1,00
Marcar
pregunta
Pregunta 14
Incorrecta
Puntúa -0,20
sobre 1,00
Marcar
pregunta
Pregunta 15
Correcta
Puntúa 1,00
sobre 1,00
Marcar
pregunta
Pregunta 16
Incorrecta
Puntúa -0,20
sobre 1,00
Marcar
pregunta
Pregunta 17
Parcialmente
correcta
Puntúa 0,67
sobre 1,00
Marcar
pregunta
Pregunta 18
Incorrecta
Puntúa -0,20
sobre 1,00
Marcar
pregunta
Pregunta 19
Correcta
Puntúa 1,00
sobre 1,00
Marcar
pregunta
Pregunta 20
Correcta
Puntúa 1,00
sobre 1,00
Marcar
pregunta
Pregunta 21
Correcta
Puntúa 1,00
sobre 1,00
Marcar
pregunta
Pregunta 22
Correcta
Puntúa 1,00
sobre 1,00
Marcar
pregunta
Pregunta 23
Incorrecta
Puntúa -0,20
sobre 1,00
Marcar
pregunta
Finalizar revisión
Comenzado el Monday, 11 de October de 2021, 20:12
Estado Finalizado
Finalizado en Monday, 11 de October de 2021, 21:32
Tiempo
empleado
1 hora 19 minutos
Puntos 11,17/23,00
Calificación 48,55 de 100,00
Para un objeto Frame es verdad que:
Es superclase de Window
Implementa la interface MenuContainer 
El "layout" por defecto es BorderLayaout 
Ninguna de las anteriores
Las tres alternativas dadas son correctas
¿Qué ocurre al ejecutar?
class A {
A() throws Exception {
System.out.println ("Executing class A constructor");
throw new IOException();
}
}
public class B extends A {
B() {
System.out.println ("Executing class B constructor");
}
public static void main ( String args[] ) {
try {
A a = new B();
} catch ( Exception e) {
System.out.println( e.getMessage() );
}
}
} 
Seleccione una:
el constructor de B debería procesarse a través del manejador Exception 
Ninguna de las otras  
. muestra: Executing class A constructor y luego Executing class B constructor 
muestra: Executing class A constructor 
el constructor de B debería procesarse a través del manejador IOException
Indicar el enunciado correcto a poner en (1) para crearuna instancia de Bar.
class Foo {
    class Bar{ }
}
class Test {
    public static void main (String [] args)    {
        Foo f = new Foo();
        (1)
    }
}
Bar b = f.new Bar(); 
Bar b = new f.Bar();
Foo.Bar b = new Foo.Bar();
Ninguno es correcto
Foo.Bar b = f.new Bar();
public class Parcel {
public static ....... int elMayorEs(T[] at, T elem) {
T x = at[0];
int k = 0;
for (k = 0; k < at.length; k++)
if (!(at[k] == x)) break;
return k;
}
}
Para completar en ........ la parametrización del código, siendo T un tipo genérico que hereda de la clase
Comparable restringida al tipo T
<T extends Comparable & T>
<T extends Comparable<T>>
Ninguna
<T extends Comparable T>
<T extends Comparable> 
Indicar en el println la sintaxis de acceso al símbolo ‘x’ de class class SHT
SHT.x
SHT.this.x 
this.x
SHT.FirstLevel.x
ninguna
class X {
    public void fragile() throws IllegalArgumentException {
        throw new IllegalArgumentException();
    }
}
public class Test {
    public static void main(String [] arg) {
        X a = new X();
        try {
            a.fragile();
        }
        catch ( NullPointerException npex ) { System.out.println("Null"); }
        catch ( Exception ex ) { System.out.println( "Exception" ); }
        finally { System.out.println( "Done" ); }
        System.out.println( "myMethod" );
    }
}
Muestra:
 
Seleccione una:
Exception, Done y myMethod 
Exception y Done
Done y myMethod
Exception y myMethod
Exception
Null y Exception
abstract class Nueva {
private int n;
public Nueva(int a) {
n = a;
}
}
class Foo <T extends Nueva>{
public final T newElement() {
return ............{};
}
}
Enunciado a colocar en .......... que regrese una instancia de T inicializada con el valor 5.
(T) newInstance Nueva(5)
new Nueva(5)
(T)new Nueva(5)
Ninguna 
(T) Nueva(5)
¿Cuál enunciado produce un error?
class DogName {
private String dname;
public DogName(String dname) {
this.dname = dname;
}
public String getName() {
return dname;
}
public Object clone() throws CloneNotSupportedException {
return (DogName)super.clone();
}
public static void main(String[] args) {
DogName obj1 = new DogName("Tommy");
DogName obj2 = (DogName) obj1.clone();
System.out.println(obj2.getName());
new CloneNotSupportedException().printStackTrace();
}
}
Seleccione una:
return (DogName)super.clone();
new CloneNotSupportedException().printStackTrace(); 
public Object clone() throws CloneNotSupportedException
DogName obj1 = new DogName("Tommy");
DogName obj2 = (DogName) obj1.clone();
class Test {
    public static void a(int x) throws Exception {
        if (x == 0) throw new Exception();
    }
    public static void b(int x) throws Exception {
        try { a(x); }
        catch (Exception e) { System.out.println(x); }
    }
    public static void main(String args[]){
        try {
            a(1);
            b(0);
        }
        catch (Exception e) { System.out.println("(1)"); }
        finally {
            try {
                a(0);
            }
            catch (Exception e) { System.out.println("(2)"); }
        }
    }
}
Muestra:
Seleccione una:
0 y (2) 
0
(2)
(1), 0 y (2)
(1)
1 y 0
¿Qué es una excepción?
Seleccione una:
Un tipo de contenedor
Ninguna de las alternativas dadas
Un tipo de evento utilizado al crear interfaces
Un objeto que no puede ser instanciado
Es un tipo de error que se produce en tiempo de ejecución 
Qué valor toma la variable 's' si en 'x' se asigna 2
class MyException extends Exception {
private int value;
MyException(int val) { value = val; }
public int getValue() { return (value); }
}
class TestClass2 {
public static void foo(int x) throws MyException, IOException {
if (x < 0) throw (new MyException(x));
if (x > 100) throw (new IOException("Mike"));
}
public static void main(String[] args) {
int x = Integer.parseInt(args[0]);
String s;
try {
foo(x);
s = "Mike";
} catch (IOException e) {
s = "Rusty";
} catch (MyException e) {
s = "Dimitri";
}
}
}
 
2
Dimitri
Rusty
Mike 
Ninguna de las otras
En ...... es válido colocar:
new D() 
new IP()
new B1()
new A()
ninguna
Marcar las afirmaciones correctas:
Dado que la clase Inner es estática, no requiere que se cree una instancia de Outer 
Error de compilación porque Outer.s1 debería ser referenciado como Outer.this.s1
No hay errores y muestra en la salida: Java Sí No
Ninguna de las otras opciones es correcta
Error de compilación porque Inner se crea antes que una instancia de la clase es la que está anidada 
class Shape { /* ... */ }
class Circle extends Shape { /* ... */ }
class Rectangle extends Shape { /* ... */ }
class Node<T> { /* ... */ }
¿El siguiente código compila?
Node<Circle> nc = new Node<>();
Node<Shape> ns = nc;
Ninguna
No, porque la clase raíz debería ser: class<T> Shape { /* ... */ } 
Produce error en: Node<Shape> ns = nc;
No, porque Node<Circle> no es subtipo de Node<Shape>
Sí, porque Node<Circle> es subtipo de Node<Shape>
Enunciado para activar 'metodo' de B, desde un contexto externo de A
new B().metodo();
new A().metodo().metodo(); 
ninguna
metodo().new A().metodo();
new A().metodo();
¿Cuál es la forma correcta de crear un objeto de una clase anidada anónima, desde un método de la clase Bar?
Raiz f = new Bar() { };
Ninguna de las otras opciones son correctas
Raiz f = new Raiz(24) { };
Raiz f = new Raiz.Bar(String s) { };
Bar f = new Raiz(String s) { }; 
Marcar los valores que muestra en la salida:
Java
No 
2
No muestra nada
Si 
public static void print(List<? extends Number> list) {
for (Number n : list) System.out.print(n + " ");
}
Elegir la opción correcta:
Seleccione una:
Ninguna de las otras opciones es correcta
Number n: debería indicarse un subtipo de Number
No hay error, es correcto
Error, en en el for se debe indicar un subtipo de Number 
Error, deber ser: for (int i=0; i < list.lenght; i++)
Un método parametrizado, no puede ser static
class CERO extends Exception {
    public CERO() {
        super();
    }
}
class A {
    protected float x;
    public A(float n) {
        x = n;
    }
}
class B extends A {
    B() {
        super((float) 4.0);
    }
    public float multiplicar(float n) throws CERO {
        float r;
        if (n == (float) 0.0) {
            throw new CERO();
        }
        r = n * x;
        return r;
    }
}
public class Dos {
    public static void main(String[] arg) {
        B d = new B();
        A f = new A((float) 3.0);
        float r;
        try {
            r = d.multiplicar((float) 0.0);
        } catch (........ a) { }
    }
}
Indicar lo que se debería colocar en la línea de puntos.
CERO 
Ninguna de las otras
new
Dos
float
¿Qué ocurre al ejecutar el siguiente código?
import java.io.*;
public class P {
public static void main(String [] args) {
P c = new P();
c.go();
System.out.println("Fin");
}
public void go() {
int i = 0;
try {
RandomAccessFile raf = new RandomAccessFile("P.java","r");
i = raf.read();
raf.write(99);
System.out.println("Hecho");
}
catch (IOException ioe) {
System.out.println("Bloqueado");
}
}
} 
Seleccione una:
muestra: Bloqueado, porque lanza la excepción, y Fin  
error de compilación, porque el archivo se abrió en modo lectura 
ejecuta y se interrumpe mostrando un mensaje en color rojo porque lanza la excepción 
el programa aborta la ejecución, en cuanto inicia 
error de compilación, el método go() debería estar definido antes del main() 
Definir la cabecera de un método accesible desde las subclases, que está parametrizado para recibir como
argumento indistintamente un objeto Integer, Long, Float o Doubley que no regresa valor.
Seleccione una:
protected <U extends Number> U metodo(U u)
protected <U extends Number> void metodo(Number u)
protected <U extends Number> void metodo(U u) 
protected <U implements Number> void metodo(U u)
protected <U> void metodo(U u)
Indicar en el println la sintaxis de acceso al símbolo ‘x’ de class FirstLevel
this.x 
FirstLevel.x
super.xninguna
SHT.FirstLevel.x
¿Qué ocurre al ejecutar?
class Level1Exception extends Exception {}
class Level2Exception extends Level1Exception {}
class Level3Exception extends Level2Exception {}
public class Purple {
public static void main(String [] args) {
int a,b,c,d,f,g,x;
a = b = c = d = f = g = 0;
x = 1;
try {
try {
switch (x) {
case 1: throw new Level1Exception();
case 2: throw new Level2Exception();
case 3: throw new Level3Exception();
} a++; }
catch (Level2Exception e) {b++;}
finally {c++;}
}
catch (Level1Exception e) { d++;}
catch (Exception e) {f++;}
finally {g++;}
System.out.print(a + "," + b + "," + c + "," + d + "," + f + "," + g);
}
} 
Seleccione una:
muestra: 0,0,1,1,0,1 
Error de compilación, no se pueden anidar los bloques try 
error de compilación, no puede haber más un bloque finally  
error de compilación, en catch (Level2Exception e), porque debería tener tantos catch como opciones
tiene el switch 
la sintaxis en la línea a = b = c = d = f = g = 0; es inválida
Navegación por el cuestionario
Ariel Alejandro Robles
Mostrar una página cada vez
Finalizar revisión
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23
UTN
https://www.campusvirtual.frm.utn.edu.ar/user/view.php?id=10209&course=78
https://www.campusvirtual.frm.utn.edu.ar/mod/quiz/review.php?attempt=277257&cmid=2054&showall=0
Paradigmas de Programación
Pregunta 1
Incorrecta
Puntúa -0,20
sobre 1,00
Marcar
pregunta
Pregunta 2
Correcta
Puntúa 1,00
sobre 1,00
Marcar
pregunta
Pregunta 3
Incorrecta
Puntúa -0,20
sobre 1,00
Marcar
pregunta
Pregunta 4
Incorrecta
Puntúa -0,20
sobre 1,00
Marcar
pregunta
Pregunta 5
Parcialmente
correcta
Puntúa 0,40
sobre 1,00
Marcar
pregunta
Pregunta 6
Parcialmente
correcta
Puntúa 0,40
sobre 1,00
Marcar
pregunta
Pregunta 7
Incorrecta
Puntúa -0,20
sobre 1,00
Marcar
pregunta
Pregunta 8
Correcta
Puntúa 1,00
sobre 1,00
Marcar
pregunta
Pregunta 9
Incorrecta
Puntúa -0,20
sobre 1,00
Marcar
pregunta
Pregunta 10
Incorrecta
Puntúa -0,20
sobre 1,00
Marcar
pregunta
Pregunta 11
Incorrecta
Puntúa -0,20
sobre 1,00
Marcar
pregunta
Pregunta 12
Parcialmente
correcta
Puntúa 0,60
sobre 1,00
Marcar
pregunta
Pregunta 13
Correcta
Puntúa 1,00
sobre 1,00
Marcar
pregunta
Pregunta 14
Incorrecta
Puntúa -0,20
sobre 1,00
Marcar
pregunta
Pregunta 15
Incorrecta
Puntúa -0,20
sobre 1,00
Marcar
pregunta
Pregunta 16
Incorrecta
Puntúa -0,20
sobre 1,00
Marcar
pregunta
Pregunta 17
Parcialmente
correcta
Puntúa 0,60
sobre 1,00
Marcar
pregunta
Pregunta 18
Incorrecta
Puntúa -0,20
sobre 1,00
Marcar
pregunta
Pregunta 19
Incorrecta
Puntúa -0,20
sobre 1,00
Marcar
pregunta
Pregunta 20
Correcta
Puntúa 1,00
sobre 1,00
Marcar
pregunta
Pregunta 21
Correcta
Puntúa 1,00
sobre 1,00
Marcar
pregunta
Pregunta 22
Correcta
Puntúa 1,00
sobre 1,00
Marcar
pregunta
Pregunta 23
Incorrecta
Puntúa -0,20
sobre 1,00
Marcar
pregunta
Finalizar revisión
Comenzado el Monday, 11 de October de 2021, 21:26
Estado Finalizado
Finalizado en Monday, 11 de October de 2021, 22:34
Tiempo empleado 1 hora 8 minutos
Puntos 5,40/23,00
Calificación 23,48 de 100,00
Qué valor toma la variable 's' si en 'x' se asigna 200
class MyException extends Exception { 
private int value; 
MyException(int val) { value = val; } 
public int getValue() { return (value); } 
} 
class TestClass2 { 
public static void foo(int x) throws MyException, IOException { 
if (x < 0) throw (new MyException(x)); 
if (x > 100) throw (new IOException("Mike")); 
} 
public static void main(String[] args) { 
int x = Integer.parseInt(args[0]); 
String s; 
try { 
foo(x);
s = "Mike"; 
} catch (IOException e) { 
s = "Rusty"; 
} catch (MyException e) { 
s = "Dimitri"; 
} 
} 
}
Ninguna de las otras
200
Mike �
Dimitri
Rusty
¿A qué se convierte después del reemplazo de T?
public static <T extends Comparable <T>> int find (T [] en, T elem) { 
 // ... 
}
Class [] en, Class elem
Comparable en, Comparable elem
Object [] en, Object elem
Ninguna
Comparable [] en, Comparable elem �
Indicar cuál es la salida:
public class X { 
 public static void main(String [] args) {
 try {
 badMethod(); 
 System.out.print("A");
 } 
 catch (Exception ex) {
 System.out.print("B"); 
 }
 finally {
 System.out.print("C");
 }
 System.out.print("D");
 } 
 public static void badMethod() {
 throw new Error();
 }
}
Seleccione una:
Ninguna es correcta
ABCD
falla al compilar �
muestra C antes de cancelar con un mensaje de error
muestra BC antes de cancelar con un mensaje de error
public class Pair<K, V> {
public Pair(K key, V value) {
this.key = key;
this.value = value;
}
private K key;
private V value;
}
El compilador al traducir el código, sustituye las referencias a los nombres tipos genéricos K, V. Indicar el reemplazo que se hace.
<K, V>
Class �
Ninguna
Object
Pair
Se justifica declarar una clase anónima para:
definir un pequeña interface �
extender una clase adaptadora de eventos �
Ninguna de las otras opciones �
definir un conjunto de constantes �
implementar una interface para un “event listener” �
¿Cuáles son las formas correctas para crear objetos?
Sean las definiciones: 
class A { 
} 
class B extends A { 
} 
class C extends A { 
} 
class D extends B { 
} 
class Dato<T> { 
 private T obj; 
 public Dato(T o) { obj = o; } 
} 
class Lanzador { 
 public void probar(Dato<? extends A> obj) {} 
} 
...
Lanzador p = new Lanzador();
Si:
A a = new A(); 
B b = new B(); 
A c = new C(); 
y
p.probar(r1); 
p.probar(r2); 
p.probar(r3); 
p.probar(r4);
Seleccione una o más de una:
Dato<D> r4 = new Dato<D>(d); �
Dato<B> r2 = new Dato<B>(b); �
Dato<A> r1 = new Dato<A>(a); �
Ninguna de las otras �
Dato<C> r3 = new Dato<C>(c); �
Indicar lo que ocurre:
try {
 int x = 0;
 int y = 5 / x;
}
catch (Exception e) {
 System.out.println("Exception");
}
catch (ArithmeticException ae) {
 System.out.println(" Arithmetic Exception");
}
System.out.println("finished");
Seleccione una:
falla al compilar
muestra: Exception �
Ninguna es correcta
muestra: finished
muestra: Arithmetic Exception
interface MyOuter {
static class MyInner {
public static void print1() {
System.out.println(1);
}
}
void print1();
}
class OutSider implements MyOuter {
public void print1() {
new MyOuter() {
public void print1() {
System.out.println(0);
}
}.print1();
}
}
public class JavaApp {
public static void main(String[] args) {
MyOuter x = new OutSider();
x.print1();
..................
}
}
 
Completar en la línea de puntos al enunciado para activar el método print1() de la clase MyInner.
MyOuter.MyInner.print1(); �
OutSider.MyInner.print1();
OutSider.MyOuter.print1();
MyOuter.print1();
MyInner.print1();
¿Qué ocurre al ejecutar?
class Level1Exception extends Exception {}
class Level2Exception extends Level1Exception {}
class Level3Exception extends Level2Exception {}
public class Purple {
public static void main(String [] args) {
int a,b,c,d,f,g,x;
a = b = c = d = f = g = 0;
x = 1;
try {
try {
switch (x) {
case 1: throw new Level1Exception();
case 2: throw new Level2Exception();
case 3: throw new Level3Exception();
} a++; }
catch (Level2Exception e) {b++;}
finally {c++;}
}
catch (Level1Exception e) { d++;}
catch (Exception e) {f++;}
finally {g++;}
System.out.print(a + "," + b + "," + c + "," + d + "," + f + "," + g);
}
} 
Seleccione una:
muestra: 0,0,1,1,0,1 
error de compilación, en catch (Level2Exception e), porque debería tener tantos catch como opciones tiene el switch 
Error de compilación, no se pueden anidar los bloques try 
error de compilación, no puede haber más un bloque finally �
la sintaxis en la línea a = b = c = d = f = g = 0; es inválida
abstract class Nueva {
private int n;
public Nueva(int a) {
n = a;
}
}
class Foo <T extends Nueva>{
public final T newElement() {
return ............{};
}
}
Enunciadoa colocar en .......... que regrese una instancia de T inicializada con el valor 5.
Ninguna �
(T) newInstance Nueva(5)
new Nueva(5)
(T) Nueva(5)
(T)new Nueva(5)
¿Qué ocurre al ejecutar?
class Level1Exception extends Exception {}
class Level2Exception extends Level1Exception {}
class Level3Exception extends Level2Exception {}
public class Purple {
public static void main(String [] args) {
int a,b,c,d,f,g,x;
a = b = c = d = f = g = 0;
x = 1;
try {
try {
switch (x) {
case 1: throw new Level3Exception();
case 2: throw new Level2Exception();
case 3: throw new Level1Exception();
} a++; }
catch (Level2Exception e) {b++;}
finally {c++;}
}
catch (Level1Exception e) { d++;}
catch (Exception e) {f++;}
finally {g++;}
System.out.print(a + "," + b + "," + c + "," + d + "," + f + "," + g);
}
} 
Seleccione una:
muestra: 0,0,1,1,0,1 
Error de compilación, no se pueden anidar los bloques try 
ninguna de las otras opciones
error de compilación, en catch (Level2Exception e), porque debería tener tantos catch como opciones tiene el switch 
error de compilación, no puede haber más un bloque finally �
¿Cuál sería la forma correcta de crear un objeto?
Si:
A a = new A(); 
A b = new B(); 
C c = new C(); 
D d = new D();
y
p.probar(r1); 
p.probar(r2); 
p.probar(r3); 
p.probar(r4);
Seleccione una o más de una:
Dato<C> r3 = new Dato<C>(c); �
Dato<D> r4 = new Dato<D>(d); �
Dato<B> r2 = new Dato<B>(b); �
Dato<A> r1 = new Dato<A>(a); �
Ninguna de las otras. �
Marcar los valores que muestra en la salida:
2
Java �
No muestra nada
No �
Si �
Para crear una clase anónima en (1) cuál código habría que poner:
class TopBar {
 TopBar(String s) { }
 TopBar() { }
}
class Bar extends TopBar {
 Bar() { }
 Bar(String s) {super(s);}
 void method() {
 (1)
 }
}
TopBar f = new Bar() { };
TopBar f = new TopBar.Bar(String s) { }; �
Ninguna es correcta
Bar f = new TopBar(String s) { };
TopBar f = new TopBar(24) { };
Qué valor toma la variable 's' si en 'x' se asigna 2
class MyException extends Exception { 
private int value; 
MyException(int val) { value = val; } 
public int getValue() { return (value); } 
} 
class TestClass2 { 
public static void foo(int x) throws MyException, IOException { 
if (x < 0) throw (new MyException(x)); 
if (x > 100) throw (new IOException("Mike")); 
} 
public static void main(String[] args) { 
int x = Integer.parseInt(args[0]); 
String s; 
try { 
foo(x);
s = "Mike"; 
} catch (IOException e) { 
s = "Rusty"; 
} catch (MyException e) { 
s = "Dimitri"; 
} 
} 
}
 
Mike
Dimitri �
2
Rusty
Ninguna de las otras
Una clase anidada estática:
Ninguna es correcta
debe extender la clase que encierra (anida)
Todas son correctas �
no tiene acceso a miembros que no sean de clase, de la clase "externa"
debe tener una referencia a una instancia de una clase anidada a fin de poder instanciarla
todos sus atributos y métodos deben ser de clase
 
Enunciado válido que crea una instancia de B desde un contexto externo de A
new A().new B(); �
A.B.new B(); �
ninguna
A.new B(); �
new A().metodo(); �
 
Indicar la afirmación correcta
la función regresa True o False según valores de x, y
compila y ejecuta
compila pero no ejecuta �
no compila, T debería ser de algún tipo (int, float, etc.)
T debe ser una clase Integer, Float, etc.
¿Qué ocurre al ejecutar?
Suponga el existe el archivo MyFile.java
import java.io.*;
public class MyReader {
public static void main ( String args[] ) {
try {
FileReader fileReader = new FileReader("MyFile.java");
BufferedReader bufferedReader = new BufferedReader(fileReader);
String strString;
fileReader.close();
while ( ( strString = bufferedReader.readLine()) != null )
System.out.println ( strString );
} catch ( IOException ie) {
System.out.println ( ie.getMessage() );
}
}
} 
Seleccione una:
muestra el contenido de la primera línea del archivo 
la línea fileReader.close() lanza la excepción FileNotFoundException �
produce una excepción mientras construye el objeto BufferedReader 
lanza una IOException en bufferedReader.readLine()) y procesa el catch
MyFile.java (El sistema no puede encontrar el archivo especificado)
class CERO extends Exception { 
 public CERO() { 
 super(); 
 } 
} 
class A { 
 protected float x; 
 public A(float n) { 
 x = n; 
 } 
} 
class B extends A { 
 B() { 
 super((float) 4.0); 
 } 
 public float multiplicar(float n) throws CERO { 
 float r; 
 if (n == (float) 0.0) { 
 throw new CERO(); 
 } 
 r = n * x; 
 return r; 
 } 
} 
public class Dos { 
 public static void main(String[] arg) { 
 B d = new B(); 
 A f = new A((float) 3.0); 
 float r; 
 try { 
 r = d.multiplicar((float) 0.0); 
 } catch (........ a) { } 
 } 
}
Indicar lo que se debería colocar en la línea de puntos.
float
new
CERO �
Dos
Ninguna de las otras
¿Qué es una excepción?
Seleccione una:
Ninguna de las alternativas dadas 
Es un tipo de error que se produce en tiempo de ejecución �
Un tipo de evento utilizado al crear interfaces
Un objeto que no puede ser instanciado
Un tipo de contenedor
¿Cuál es la forma correcta de crear un objeto de una clase anidada anónima, desde un método de la clase Bar?
Bar f = new Raiz(String s) { };
Raiz f = new Bar() { }; �
Raiz f = new Raiz.Bar(String s) { };
Raiz f = new Raiz(24) { };
Ninguna de las otras opciones son correctas
 
Enunciado para activar 'metodo' de B, desde un contexto externo de A
new B().metodo();
new A().metodo();
ninguna �
new A().metodo().metodo();
metodo().new A().metodo();
Navegación por el cuestionario
Julian Esteban Serralta
Mostrar una página cada vez
Finalizar revisión
1 2 3 4 5 6 7 8 9
10 11 12 13 14 15 16 17 18
19 20 21 22 23
UTN
https://www.campusvirtual.frm.utn.edu.ar/user/view.php?id=10258&course=78
https://www.campusvirtual.frm.utn.edu.ar/mod/quiz/review.php?attempt=277306&cmid=2054&showall=0
Paradigmas de Programación
Pregunta 1
Correcta
Puntúa 1,00
sobre 1,00
Marcar
pregunta
Pregunta 2
Incorrecta
Puntúa -0,20
sobre 1,00
Marcar
pregunta
Pregunta 3
Incorrecta
Puntúa -0,20
sobre 1,00
Marcar
pregunta
Pregunta 4
Correcta
Puntúa 1,00
sobre 1,00
Marcar
pregunta
Pregunta 5
Correcta
Puntúa 1,00
sobre 1,00
Marcar
pregunta
Pregunta 6
Parcialmente
correcta
Puntúa 0,80
sobre 1,00
Marcar
pregunta
Pregunta 7
Correcta
Puntúa 1,00
sobre 1,00
Marcar
pregunta
Pregunta 8
Parcialmente
correcta
Puntúa 0,27
sobre 1,00
Marcar
pregunta
Pregunta 9
Correcta
Puntúa 1,00
sobre 1,00
Marcar
pregunta
Pregunta 10
Correcta
Puntúa 1,00
sobre 1,00
Marcar
pregunta
Pregunta 11
Correcta
Puntúa 1,00
sobre 1,00
Marcar
pregunta
Pregunta 12
Correcta
Puntúa 1,00
sobre 1,00
Marcar
pregunta
Pregunta 13
Correcta
Puntúa 1,00
sobre 1,00
Marcar
pregunta
Pregunta 14
Correcta
Puntúa 1,00
sobre 1,00
Marcar
pregunta
Pregunta 15
Correcta
Puntúa 1,00
sobre 1,00
Marcar
pregunta
Pregunta 16
Correcta
Puntúa 1,00
sobre 1,00
Marcar
pregunta
Pregunta 17
Correcta
Puntúa 1,00
sobre 1,00
Marcar
pregunta
Pregunta 18
Incorrecta
Puntúa -0,20
sobre 1,00
Marcar
pregunta
Pregunta 19
Incorrecta
Puntúa -0,20
sobre 1,00
Marcar
pregunta
Pregunta 20
Incorrecta
Puntúa -0,20
sobre 1,00
Marcar
pregunta
Pregunta 21
Correcta
Puntúa 1,00
sobre 1,00
Marcar
pregunta
Pregunta 22
Correcta
Puntúa 1,00
sobre 1,00
Marcar
pregunta
Pregunta 23
Correcta
Puntúa 1,00
sobre 1,00
Marcar
pregunta
Finalizar revisión
Comenzado el Monday, 11 de October de 2021, 15:40
Estado Finalizado
Finalizado en Monday, 11 de October de 2021, 16:43
Tiempo
empleado
1 hora 2 minutos
Puntos 16,07/23,00
Calificación 69,86 de 100,00
¿Cuál enunciado produce un error?
class DogName {
private String dname;
public DogName(String dname) {
this.dname = dname;
}
public String getName() {
return dname;
}
public Object clone() throws CloneNotSupportedException {
return (DogName)super.clone();}
public static void main(String[] args) {
DogName obj1 = new DogName("Tommy");
DogName obj2 = (DogName) obj1.clone();
System.out.println(obj2.getName());
new CloneNotSupportedException().printStackTrace();
}
}
Seleccione una:
return (DogName)super.clone();
DogName obj1 = new DogName("Tommy");
DogName obj2 = (DogName) obj1.clone(); 
new CloneNotSupportedException().printStackTrace();
public Object clone() throws CloneNotSupportedException
Indicar cuál es la salida:
public class X { 
    public static void main(String [] args)  {
        try {
            badMethod(); 
            System.out.print("A");
        } 
        catch (Exception ex) {
            System.out.print("B"); 
        }
        finally  {
            System.out.print("C");
        }
        System.out.print("D");
    } 
    public static void badMethod()  {
        throw new Error();
    }
}
Seleccione una:
muestra BC antes de cancelar con un mensaje de error
ABCD
Ninguna es correcta
falla al compilar 
muestra C antes de cancelar con un mensaje de error
¿Qué afirmación es verdad sobre una clase anidada estática?
Debe extender de la clase que la incluye
Ninguna de las otras opciones son correctas
Sus variables y métodos deben ser estáticos
Debe tener una referencia a una instancia de la clase que la encierra para instanciarla 
No tiene acceso a los miembros no-estáticos de la clase que la incluye
class Test {
    public static void a(int x) throws Exception {
        if (x == 0) throw new Exception();
    }
    public static void b(int x) throws Exception {
        try { a(x); }
        catch (Exception e) { System.out.println(x); }
    }
    public static void main(String args[]){
        try {
            a(1);
            b(0);
        }
        catch (Exception e) { System.out.println("(1)"); }
        finally {
            try {
                a(0);
            }
            catch (Exception e) { System.out.println("(2)"); }
        }
    }
}
Muestra:
Seleccione una:
(1), 0 y (2)
1 y 0
0 y (2) 
0
(1)
(2)
Indicar la afirmación correcta
debería indicarse <K, V extends "alguna clase">
debería indicarse <K, V extends Object>
ninguna
el compilador sustituye K y V por referencias Object 
K y V no son nombres válidos para tipos genéricos
Se justifica declarar una clase anónima para:
implementar una interface para un “event listener” 
Ninguna de las otras opciones
extender una clase adaptadora de eventos 
definir un conjunto de constantes 
definir un pequeña interface
¿Qué ocurre al ejecutar?
class Level1Exception extends Exception {}
class Level2Exception extends Level1Exception {}
class Level3Exception extends Level2Exception {}
public class Purple {
public static void main(String [] args) {
int a,b,c,d,f,g,x;
a = b = c = d = f = g = 0;
x = 1;
try {
try {
switch (x) {
case 1: throw new Level1Exception();
case 2: throw new Level2Exception();
case 3: throw new Level3Exception();
} a++; }
catch (Level2Exception e) {b++;}
finally {c++;}
}
catch (Level1Exception e) { d++;}
catch (Exception e) {f++;}
finally {g++;}
System.out.print(a + "," + b + "," + c + "," + d + "," + f + "," + g);
}
} 
Seleccione una:
Error de compilación, no se pueden anidar los bloques try 
error de compilación, en catch (Level2Exception e), porque debería tener tantos catch como opciones
tiene el switch 
muestra: 0,0,1,1,0,1  
error de compilación, no puede haber más un bloque finally 
la sintaxis en la línea a = b = c = d = f = g = 0; es inválida
Indicar  la opción que sea válida, para cada combinación de parametrización del método haceAlgo (línea
punteada) y su correspondiente llamada:
class Valor<T extends Number> {
private T v;
public void add(T t) { v = t; }
public ............ void haceAlgo (T obj) { /* código */ }
}
Valor<Integer> obj;
obj = new Valor<Integer>();
obj.add(new Integer(10));
Seleccione una o más de una:
<T extends Object>
obj.haceAlgo(obj);
<T extends Serializable>
obj.haceAlgo(obj.toString());

<T extends Comparable>
obj.haceAlgo(obj);

<T extends Serializable>
obj.haceAlgo(obj);

<T extends Comparable>
obj.haceAlgo(obj.toString());

<T extends Serializable & Comparable<? super U>>
obj.haceAlgo(obj);
class X {
    public void fragile() throws IllegalArgumentException {
        throw new IllegalArgumentException();
    }
}
public class Test {
    public static void main(String [] arg) {
        X a = new X();
        try {
            a.fragile();
        }
        catch ( NullPointerException npex ) { System.out.println("Null"); }
        catch ( Exception ex ) { System.out.println( "Exception" ); }
        finally { System.out.println( "Done" ); }
        System.out.println( "myMethod" );
    }
}
Muestra:
 
Seleccione una:
Null y Exception
Exception y Done
Exception, Done y myMethod 
Done y myMethod
Exception
Exception y myMethod
¿Cuál sería la forma correcta de crear un objeto?
Si:
A a = new A();
A b = new B();
C c = new C();
D d = new D();
y
p.probar(r1);
p.probar(r2);
p.probar(r3);
p.probar(r4);
Seleccione una o más de una:
Dato<B> r2 = new Dato<B>(b);
Dato<A> r1 = new Dato<A>(a); 
Dato<D> r4 = new Dato<D>(d); 
Dato<C> r3 = new Dato<C>(c); 
Ninguna de las otras.
interface MO {
class MI {
public static void print1() {
System.out.println(1);
}
}
void print1();
}
class OS implements MO {
public void print1() {
new MO() {
public void print1() {
System.out.println(0);
}
}.print1();
}
}
public class JavaApp {
public static void main(String[] args) {
MO x = new OS();
x.print1();
................
 }
}
El código a colocar sobre la línea para activar el método print1() de la clase MI es:
MO.print1();
OS.MI.print1(); 
MI.print1();
MO.MI.print1(); 
super.print1();
interface IP {}
class A implements IP {}
class B extends A {}
class C extends B {}
class D<T>{
    T obj;
    public D(T p){
       obj = p;
    }
    public void metodo(T q){
        obj = q;
    }
}
class MyReader {
    public static void main (String args[]) {
       D<C> x = new D(new B());
       x.metodo(......);
    }
}
En ...... es válido colocar
new IP()
new A()
new C() 
new D()
new B()
Indicar el enunciado correcto
Comparable a[] = null, b = null;  
Object a[] = null, b = null;
ninguna
Parce13 a[] = null, b = null;
T a[] = null, b = null;
Indicar el enunciado correcto a poner en (1) para crear una instancia de Bar.
class Foo {
    class Bar{ }
}
class Test {
    public static void main (String [] args)    {
        Foo f = new Foo();
        (1)
    }
}
Foo.Bar b = f.new Bar(); 
Ninguno es correcto
Bar b = f.new Bar();
Bar b = new f.Bar();
Foo.Bar b = new Foo.Bar();
Indicar lo que ocurre:
try {
    int x = 0;
    int y = 5 / x;
}
catch (Exception e) {
    System.out.println("Exception");
}
catch (ArithmeticException ae) {
    System.out.println(" Arithmetic Exception");
}
System.out.println("finished");
Seleccione una:
muestra: finished
muestra: Exception
muestra: Arithmetic Exception
falla al compilar 
Ninguna es correcta
Definir la cabecera de un método accesible desde las subclases, que está parametrizado para recibir como
argumento indistintamente un objeto Integer, Long, Float o Doubley que no regresa valor.
Seleccione una:
protected <U extends Number> void metodo(U u) 
protected <U extends Number> U metodo(U u)
protected <U implements Number> void metodo(U u)
protected <U> void metodo(U u)
protected <U extends Number> void metodo(Number u)
¿Qué ocurre al ejecutar el siguiente código?
import java.io.*;
public class P {
public static void main(String [] args) {
P c = new P();
c.go();
System.out.println("Fin");
}
public void go() {
int i = 0;
try {
RandomAccessFile raf = new RandomAccessFile("P.java","r");
i = raf.read();
raf.write(99);
System.out.println("Hecho");
}
catch (IOException ioe) {
System.out.println("Bloqueado");
}
}
} 
Seleccione una:
muestra: Bloqueado, porque lanza la excepción, y Fin  
error de compilación, porque el archivo

Continuar navegando