Descarga la aplicación para disfrutar aún más
Vista previa del material en texto
Pregunta 26 Correcta Puntúa 1,00 sobre 1,00 Pregunta 27 Incorrecta Puntúa -0,20 sobre 1,00 ¿Qué ocurre al ejecutar? interface IntBase { void myIB(); } interface IntDerived extends IntBase { int myIB(int n); } class MyBaseClass implements IntBase { public void myIB() { } } public class P extends MyBaseClass implements IntDerived { public int myIB(int n) { return 2 * n; } public static void main(String [] args) { MyBaseClass mbc = new MyBaseClass(); P der = new P(); MyBaseClass test = der; System.out.println(der.myIB(3)); } } Seleccione una: error de compilación, porque P no puede heredar en forma múltiple de MyBaseClass e IntDerived muestra: 6 ejecuta normalmente, pero no muestra nada error de compilación en interface IntDerived extends IntBase, porque debería usarse implements en lugar de extends error de compilación, porque las dos interfaces, deberían calificarse con public ¿Qué es sobre-escritura de métodos? Seleccione una: Definir varios métodos en una subclase, con el mismo nombre y parámetros que en su clase madre. Ninguna de las otras. Es encapsular métodos y atributos dentro de un objeto. Definir diferentes versiones de un método (con la misma cabecera) a través de una jerarquía de herencia Definir varios métodos en una clase con el mismo nombre y diferentes parámetros formales. Es lo mismo que sobrecargar un método. Pregunta 28 Correcta Puntúa 1,00 sobre 1,00 Pregunta 29 Correcta Puntúa 1,00 sobre 1,00 Pregunta 30 Correcta Puntúa 1,00 sobre 1,00 Una sub-clase, ¿puede utilizar como propia la variable de clase que recibió su super-clase al implementar una interface? Seleccione una: Ninguna de las otras. Si, nombrando a la interfaz, a su super-clase o a ninguna, ya que la usa como propia. No puede. Si, pero sólo si nombra a la super-clase. Sólo podría hacerlo si implementara directamente a la interfaz. Si, pero sólo si nombra a la interfaz. ¿Qué características tiene la herencia múltiple? Seleccione una o más de una: Cuando una clase tiene varias subclases. Cuando una clase tiene relaciones de herencia con una clase y de agregación con otra. Cuando una clase hereda de más de una superclase. Ninguna de las otras. En java, sólo es posible cuando una clase hereda de otra e implementa una interfaz. Un atributo que se declara en una interface... Seleccione una o más de una: tiene valor constante es static pero no final se tiene acceso a él desde la clase que implementa a la interface debe ser inicializado en la clase que implementa a la interfaz. es privada de la clase que implementa a la interfaz. ◄ Implementación del programa a analizar Ir a... Diapositivas comentadas programación O.O. ► https://www.campusvirtual.frm.utn.edu.ar/mod/resource/view.php?id=2006&forceview=1 https://www.campusvirtual.frm.utn.edu.ar/mod/resource/view.php?id=62711&forceview=1 Paradigmas de Programación Pregunta 1 Incorrecta Puntúa 0,00 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 Correcta Puntúa 1,00 sobre 1,00 Marcar pregunta Pregunta 5 Correcta Puntúa 1,00 sobre 1,00 Marcar pregunta Pregunta 6 Incorrecta Puntúa 0,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 Correcta Puntúa 1,00 sobre 1,00 Marcar pregunta Pregunta 11 Correcta Puntúa 1,00 sobre 1,00 Marcar pregunta Pregunta 12 Incorrecta Puntúa 0,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 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 Incorrecta Puntúa 0,00 sobre 1,00 Marcar pregunta Pregunta 27 Correcta Puntúa 1,00 sobre 1,00 Marcar pregunta Pregunta 28 Correcta Puntúa 1,00 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 Incorrecta Puntúa 0,00 sobre 1,00 Marcar pregunta Pregunta 32 Correcta Puntúa 1,00 sobre 1,00 Marcar pregunta Pregunta 33 Incorrecta Puntúa -0,10 sobre 1,00 Marcar pregunta Pregunta 34 Correcta Puntúa 1,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,50 sobre 1,00 Marcar pregunta Pregunta 39 Correcta Puntúa 1,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 Monday, 15 de November de 2021, 23:18 Estado Finalizado Finalizado en Tuesday, 16 de November de 2021, 00:33 Tiempo empleado 1 hora 14 minutos Puntos 35,40/43,00 Calificación 82,33 de 100,00 Prototipo de una función llamada así: f1 [(3,4),(6,7)] [ [True,True],[False,True]] == False Respuesta: f1::[(Int,Int)]->Bool � Al evaluar la expresión: fromEnum [‘2’] se responde: ERROR - Cannot infer instance *** Instance: Enum [Char] *** Expression : fromEnum ['2'] Cómo debe modificarse la expresión para obtener el ASCII de 2: Seleccione una: a. fromEnum “2” b. Ninguna de las otras. c. fromEnum [2] d. fromEnum ‘2’ � La composición de dos funciones f y g se denota mediante f . g y se define mediante la ecuación: a. ( . ) :: ( X -> Y) -> (Z -> X) -> (Z->Y) (f . g) x = f(gx) � b. ( . ) :: ( X -> Y) -> (Y -> X) -> (X->Y) (f . g) x = f(gx) c. ( . ) :: ( X -> Y) -> (Y -> Z) -> (Z->Y) (f . g) x = f(gx) d. ( . ) :: ( X -> Y) -> (Y -> Z) -> (X->Z) (f . g) x = f(gx) 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 lo que es verdad: a. Enum es un subtipo de Integral b. Real no es subtipo de Ord c. Fractional es subtipo de Ord d. Floating es subtipo de Fractional � e. Ord y Num son subtipos de Eq � 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: f1::(a)->(b)->Char->Float � 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] � Valor resultante de evaluar (escribir sin espacios) Respuesta: [6] � 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 :: (Bool) -> [a] -> [a] b. Ninguna de las otras. c. filter :: (Bool ) -> (a) -> (a) d. filter :: (a -> Bool) -> [a] -> [a] � e. filter :: (Bool -> a) -> [a] -> [a] 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. 'a' c. 'e' � d. null e.lista vacía Asocie el prototipo que corresponde a las siguientes funciones: 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 � 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 � f :: (Float -> Float) -> [Float] -> [(Float, Float, Float)] f :: (a -> a -> Bool) -> a -> a -> [Bool] f :: ([a], b) -> (a -> Bool) ¿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. Si d. Depende del tipo específico de 'a' e. No Sea: algo 0 _ a = [a] algo n f a = a : algo (n - 1) f (f a) El tipo inferido es: a. Ninguna b. algo :: Num a => a->(a->a)->a->[a] c. algo :: Num a => Int->(a->a)->a->[a] � d. algo :: a->(a->a)->a->[a] e. algo :: Int->(a->a)->a->[a] 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 [x] = [x, x] � c. copy (c : q) = (copy q) d. copy length x == 1 = [x] e. copy [x] = copy [x] 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] � 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: 10 � 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]] � Denominación de las funciones que reciben otras funciones como argumento o las regresan a. currificadas b. orden inferior c. orden superior � d. puras e. anidadas Palabra reservada que se usa para indicar una definición anidada dentro de una función a. where � b. Ninguna c. let d. currificada e. prototype ¿De qué forma sería posible definir una lista infinita de ceros? a. [0..0] b. Ninguna de las otras. c. cero = 0:cero � d. [0..] e. [0,0,0,..] 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]] � Valor resultante de evaluar (escribir sin espacios) Respuesta: [1,2,3,3,4] � 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] � 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 � Asocie el resultado que le corresponde: [ x|x <- [1..], x `mod` 2 == 0, x `mod` 3 == 0] � [(x,y,z)| x <- [1..1],y <-[x..2],z <-[x..y]] � [x| n <- [3..5], x <- [1..n], x `mod` 3 == 0] � [ x | x <- [1..y], y <- [1..], x * y] � [c | c <- [1..9], c <= 3 || c >= 6] � [x*2 | x <- [1..3], x*2 >= 6] � lista infinita [(1,1,1),(1,2,1),(1,2,2)] [3,3,3] error [1,2,3,6,7,8,9] [6] Prototipo completo currificado y usando tipos genéricos (usar a como nombre genérico), de una función que es llamada en el siguiente contexto: f1 (even y) (abs 3) 3 == 99 Respuesta: f1 :: (a->y)->(a->Int)->Int->Int � Conjunto de tamaño fijo con elementos de distintos tipos a. lista hetereogénea b. type c. Ninguna d. arreglo e. tupla � Valor resultante de evaluar (\(x:xs)->x*2) [2,4,8] Respuesta: 4 � 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 � ¿Cuáles son los tres mecanismos de Haskell para definir funciones? a. parentizada, EBNF y currificada? b. Ninguna de las otras. c. parentizada, por patrones y currificada? d. parentizada, con guardas y currificada? e. parentizada , currificada y lambda? � Prototipo completo, en formato currificado e indicando tipos específicos, de una función llamada así: f1 (n_map_1 (^ 4) [1, 2, 3, 4] ) > 10 Respuesta: f1::(Int->Int->[Int])->Bool � 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] � Apellido del investigador del creador de Haskell a. Ninguna b. McCarthy c. Church � d. Minsky e. Curry ¿Qué respuesta produce la siguiente consulta? Seleccione una: a. Ninguna de las otras. b. [7,5,5,2,5] c. [ 7 ] d. [5,2,5] � Dos funciones son iguales, si tienen la misma Imagen para argumentos iguales. A esto en Haskell se lo denomina: a. Ninguna de las otras opciones b. Inferencia c. cardinalidad d. Polimorfismo e. Extensionabilidad � Denominación de las funciones que no tienen efectos laterales a. Ninguna b. unarias c. lambda d. puras � e. de orden superior El operador : se utiliza para a. Ninguna b. dividir enteros con signo c. construir listas � d. secuenciar términos de una tupla e. dividir enteros sin signo En Haskell, a un conjunto de definiciones se la denomina: a. Regla � b. Guión c. Predicado d. Ninguna de las otras. 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" � Enunciado que permite definir nuevos tipos de datos a. data � b. where c. let d. lambda e. Ninguna Dadas las siguientes definiciones: ¿ Qué resultado se obtiene con la siguiente sesión? re(4.2,7,2.3) Seleccione una: a. 3.218696 b. Ninguna de las otras. c. 31.64 � d. 31.6389 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): 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 � Navegación por el cuestionario Lautaro Fernandez 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=10490&course=78 https://www.campusvirtual.frm.utn.edu.ar/mod/quiz/review.php?attempt=301197&cmid=2043&showall=0 Skip to main content UTN UTN Paradigmas de Programación Started on Tuesday, 16 November 2021, 7:37 PM State Finished Completed on Tuesday, 16 November 2021, 8:55 PM Time taken 1 hour 18 mins Marks 35.50/43.00 Grade 82.56 out of 100.00 Question 1 Correct Mark 1.00 out of 1.00 Not flaggedFlag question Question text 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:: Float -> Float -> Float c. f:: Int -> Int -> Int d. f :: Bool -> String Question 2 Correct Mark 1.00 out of 1.00 Not flaggedFlag question Question text https://www.campusvirtual.frm.utn.edu.ar/mod/quiz/review.php?attempt=301648&cmid=2043#maincontentPrototipo (usar tipos específicos) de una función llamada así: f1 (3,True) == 5 Answer: f1:: (Int,Bool) -> Int Question 3 Correct Mark 1.00 out of 1.00 Not flaggedFlag question Question text 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 Answer: [5,7,9] Question 4 Correct Mark 1.00 out of 1.00 Not flaggedFlag question Question text 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 Answer: [2,4,6,8] Question 5 Correct Mark 1.00 out of 1.00 Not flaggedFlag question Question text ¿Qué realiza el siguiente código? Select one: a. Devuelve dos listas. b. Devuelve una lista con cada elemento multiplicado por 2. c. Ninguna de las otras. d. Devuelve una lista con la cabeza multiplicada por 2. e. Devuelve una lista con el doble de elementos de la lista dada. Question 6 Correct Mark 1.00 out of 1.00 Not flaggedFlag question Question text Función anónima que es tratada como si fuera un valor a. implícita b. Ninguna c. curryficada d. lambda e. pura Question 7 Correct Mark 1.00 out of 1.00 Not flaggedFlag question Question text 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: Select one: a. | otherwise = esParte (head k) (tail q) b. | head k /= head q = esParte k (tail q) c. | otherwise = esParte (tail k) (tail q) d. | otherwise = True e. Ninguna de la opciones es correcta Question 8 Correct Mark 1.00 out of 1.00 Not flaggedFlag question Question text Valor resultante de evaluar (escribir sin espacios) Answer: [(3,7),(3,8),(7,8)] Question 9 Correct Mark 1.00 out of 1.00 Not flaggedFlag question Question text Valor resultante de evaluar (escribir sin espacios) Answer: [1,2,3,3,4] Question 10 Correct Mark 1.00 out of 1.00 Not flaggedFlag question Question text La función regresa la misma lista con sus valores repetidos. Indicar cuál es el enunciado que falta en el siguiente progama: Select one: a. | head k /= [] = doble [tail k] b. | tail k == [x] = dup x c. | tail k == [] = [] d. | head k == [a] = doble [tail k] e. | tail k == [] = [head k, head k] Question 11 Correct Mark 1.00 out of 1.00 Not flaggedFlag question Question text ¿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. ninguna de las otras. d. una cabeza con una cola de dos valores e. Haskell y programación funcional Revisión del intento Haskell y programación funcional_ Attempt review
Compartir