B3-T2 Lenguajes de programación. Tipos de datos. Operadores. Condicionales. Bucles y recursividad. Procedimientos, funciones y parámetros. Estructura Flashcards
Que es un Transpilador ?
Traduce el código fuente de un lenguaje de programación a otro lenguaje de programación de alto nivel.
Cuantas generaciones hay de lenguajes de programacion ?
5
1GL - lenguaje maquina
2GL- lenguaje ensamblador
3GL-C, C++, Java, Python
4GL-especificar qué hay que hacer y no cómo se hace ( SQL, MATLAB, ABAP, SAS, Oracle Forms)
5GL- inteligencia artificial (Prolog, LISP, Mercury)
En el ambito de lenguajes de programación, que es el casting ?
es el proceso de transformar un valor de un tipo a un valor de otro tipo
Que devuelve esto ?
int resultado = (5 > 3) ? 10 : 20;
10
? si true entonces, si false entonces…
En un array, como se almacenan en memoria los elementos que lo componen ?
de forma consecutiva
Como funciona una puerta logica XOR ?
Una puerta lógica XOR (OR exclusiva) es un tipo de compuerta lógica digital que produce una salida verdadera (1) solo si una, y solo una, de las entradas es verdadera.
Como funciona una puerta logica NAND ?
Una puerta lógica NAND (Not AND) es una combinación de una puerta AND seguida de una puerta NOT
La salida es 0 solo si todas las entradas son 1. En cualquier otro caso, la salida es 1.
TRUQUI: devolvera lo contrario de AND. Hacemos un and, y el resultado contrario
Como funciona una puerta logica NOR ?
Una puerta lógica NOR es una combinación de una puerta OR seguida de una puerta NOT.
La salida es 1 solo si todas las entradas son 0. En cualquier otro caso, la salida es 0.
TRUQUI: devolvera lo contrario de OR. Hacemos un OR , y lo contrario de OR
Como funciona una puerta logica XNOR ?
Una puerta lógica XNOR (OR exclusiva negada) es una combinación de una puerta XOR seguida de una puerta NOT.
La salida es 1 si ambas entradas son iguales (ambas 0 o ambas 1). Si las entradas son diferentes, la salida es 0.
TRQUI: es lo contrario de XOR. Hacemos un XOR, y devolvemos lo contrario (nota, acordarse que el XOR devuelve 1 solo si hay una condicion verdadera, y solo 1)
Que diferencia hay entre OR y XOR ?
or devuelve 1 si al menos una es verdadera
xor devuelve 1 si una y solo uno es verdadero
¿Cuál de las siguientes opciones describe mejor un compilador cruzado?
a) Un compilador que traduce código fuente a código máquina para la misma arquitectura en la que se ejecuta.
b) Un compilador que traduce código fuente a otro lenguaje de programación de alto nivel.
c) Un compilador que genera código máquina para una plataforma diferente a la que se ejecuta el compilador.
d) Un compilador que traduce e interpreta código fuente línea por línea.
C
Un compilador cruzado se usa para generar código máquina para un sistema diferente al que se está utilizando para la compilación, como compilar en una PC para un microcontrolador
¿Cuál de las siguientes afirmaciones sobre los vectores es correcta?
a) Los vectores pueden cambiar su tamaño dinámicamente durante la ejecución del programa.
b) Los vectores tienen un tamaño fijo definido en el momento de su creación.
c) Los vectores solo pueden almacenar elementos de tipo String.
d) Los vectores acceden a sus elementos utilizando claves en lugar de índices.
A
A diferencia de los arrays, los vectores se pueden redimensionar durante la ejecución del programa.
¿Qué es un lenguaje de programación de bajo nivel? proporciona un ejemplo
Un lenguaje de programación de bajo nivel es aquel que está muy cerca del lenguaje máquina y proporciona un control directo sobre el hardware. Un ejemplo es el lenguaje ensamblador.
¿Cuál es la diferencia entre una función y un procedimiento en programación?
Una función es un bloque de código que realiza una tarea específica y devuelve un valor, mientras que un procedimiento realiza una tarea pero no necesariamente devuelve un valor.
Como se hace un comentario de varias lneas en Python ?
triples comillas
”””
Este es un comentario
de varias líneas en Python.
Puedes escribir tanto como necesites aquí.
“””
Como se hace un comentario de una sola linea en Python ?
Con #
ejemplos:
#Esto es un comentario de una sola línea en Python
print(“Hola, mundo”) # Este es otro comentario
¿Cuál es la diferencia entre una lista y una tupla en Python?
Las listas son mutables, lo que significa que puedes modificar sus elementos después de que la lista ha sido creada (agregar, eliminar o cambiar elementos). Se definen usando corchetes [].
Las tuplas son inmutables, lo que significa que no puedes modificar sus elementos después de que la tupla ha sido creada. Se definen usando paréntesis ().
lista = [1, 2, 3]
tupla = (1, 2, 3)
¿Cómo puedes definir una función en Python que toma un número variable de argumentos?
Puedes definir una función que tome un número variable de argumentos utilizando *args y **kwargs.
def funcion_varios_args(*args, **kwargs):
print(“args:”, args)
print(“kwargs:”, kwargs)
Llamada a la función
funcion_varios_args(1, 2, 3, clave1=”valor1”, clave2=”valor2”)
¿Cómo manejas excepciones en Python?
Puedes manejar excepciones en Python usando las declaraciones try, except, else y finally.
try:
# Código que puede lanzar una excepción
resultado = 10 / 0
except ZeroDivisionError:
# Código que se ejecuta si ocurre una excepción
print(“Error: División por cero”)
else:
# Código que se ejecuta si no ocurre ninguna excepción
print(“El resultado es”, resultado)
finally:
# Código que se ejecuta siempre, ocurra o no una excepción
print(“Ejecución completa”)
¿Qué es un decorador en Python y cómo se usa?
Un decorador en Python es una función que se utiliza para modificar o extender el comportamiento de otra función o método sin cambiar su código. Se define usando el símbolo @ seguido del nombre del decorador.
def mi_decorador(func):
def envoltura():
print(“Algo antes de la función”)
func()
print(“Algo después de la función”)
return envoltura
@mi_decorador
def di_hola():
print(“¡Hola!”)
di_hola()
# Output:
# Algo antes de la función
# ¡Hola!
# Algo después de la función
¿Cuántas veces se recorrería el siguiente bucle Java? for (int i = 1; i <= 120; ++i)
A) 121 veces
B) 119 veces
C) 120 veces
D) 118 veces
C
120 veces
Para las variables a=1, b=2, c=3, d=1 ¿cuál es la operación lógica que da un resultado true?
a) ((a>b) or (a<c)) and ((a==c) or (a>=b))
b) ((a>=b) or (a<d)) and ((a>=d) or (c>d))
c) Not (a==c) and (c>b)
d) Not (a>=d) and not (c>=b)
C
Not (a==c) and (c>b)
Dadas las variables x = 4, y = 5, z = 6, ¿cuál de las siguientes expresiones da como resultado True?
a) (x == y) and (y < z)
b) (x != y) or (z > y)
c) (x < y) and (y == z)
d) not (x == z) and (y >= x)
B
(x != y) or (z > y)
Con las variables p = 3, q = 7, r = 2, ¿cuál de las siguientes expresiones es False?
a) (p < q) and (q > r)
b) (p == r) or (r < q)
c) not (p > q) and (r >= p)
d) (p != r) and (q == 7)
C
not (p > q) and (r >= p)
Dadas las variables a = 10, b = 15, c = 10, ¿cuál de las siguientes expresiones es True?
a) (a < b) and (c > b)
b) (a == c) or (b != c)
c) not (a == b) and (a == c)
d) (b > c) and not (a != c)
B
(a == c) or (b != c)
Dadas las variables x = 6, y = 4, z = 2, ¿cuál de las siguientes expresiones es False?
a) (x > y) or (z == y)
b) not (x == z) and not (y > z)
c) (x >= y) and (z <= y)
d) not (x == y) and (x != z)
B
not (x == z) and not (y > z)
Con las variables a = 8, b = 10, c = 6, ¿cuál de las siguientes expresiones es True?
a) not (a <= b) and (c > b)
b) (a < b) or (a == c)
c) (a != c) and (b == c)
d) not (a == b) and (a == c)
B
(a < b) or (a == c)
Si x = 7, y = 7, z = 3, ¿cuál de las siguientes expresiones devuelve False?
a) (x == y) and (y > z)
b) (x != z) or (y == z)
c) not (x < y) and (z > x)
d) (x > z) and (y >= z)
C
not (x < y) and (z > x)
Con las variables a = 9, b = 6, c = 4, ¿cuál de las siguientes expresiones es True?
a) (a > b) or (b > c)
b) (a <= b) and (c == a)
c) not (a == c) and (b < c)
d) (a == b) and (a != c)
A
(a > b) or (b > c)
Señale la respuesta correcta en relación con las funciones y los procedimientos:
a) Una llamada a un procedimiento puede aparecer como operando de una expresión.
b) El paso de parámetros por referencia envía una copia del valor que tenga el parámetro real, por lo que no se podrá alterar el contenido de la variable.
c) Los parámetros por referencia se pueden emplear como parámetros de entrada/salida.
d) Todo procedimiento debe ejecutar una sentencia de return.
C
Los parámetros por referencia se pueden emplear como parámetros de entrada/salida.
¿Cuál de las siguientes afirmaciones es correcta sobre las funciones en programación?
a) Las funciones no pueden devolver un valor.
b) Las funciones siempre deben tener parámetros de entrada.
c) Las funciones pueden ser llamadas dentro de expresiones.
d) Las funciones deben modificar los valores de los parámetros pasados.
C
Las funciones pueden ser llamadas dentro de expresiones.
¿Cuál es la principal diferencia entre un procedimiento y una función en programación?
a) Una función siempre devuelve un valor, mientras que un procedimiento no lo hace.
b) Un procedimiento no puede modificar las variables globales, mientras que una función sí.
c) Un procedimiento no tiene parámetros de entrada, pero una función siempre los tiene.
d) No hay ninguna diferencia; ambos son lo mismo.
A
Una función siempre devuelve un valor, mientras que un procedimiento no lo hace.
¿Qué ocurre cuando se pasan parámetros por valor a una función?
a) La función puede modificar el valor de la variable original.
b) La función recibe una copia del valor de la variable, por lo que no puede modificar la variable original.
c) La variable original se pasa por referencia dentro de la función, pero sin poder ser modificada.
d) La función siempre devuelve el valor original sin modificarlo.
B
La función recibe una copia del valor de la variable, por lo que no puede modificar la variable original.
¿Qué significa “paso de parámetros por referencia”?
a) La variable original no se ve afectada por los cambios realizados dentro de la función.
b) Se pasa una copia del valor de la variable, pero la variable original puede ser modificada.
c) La función recibe la dirección de memoria de la variable original, permitiendo que la variable sea modificada directamente.
d) No se pasan parámetros a la función.
C
La función recibe la dirección de memoria de la variable original, permitiendo que la variable sea modificada directamente.
¿Cuál de las siguientes afirmaciones es verdadera acerca de las funciones recursivas?
a) Una función recursiva nunca debe tener una condición de salida.
b) Una función recursiva siempre debe llamar a sí misma antes de realizar cualquier acción.
c) Una función recursiva debe tener al menos una llamada a sí misma y una condición de salida.
d) Las funciones recursivas no pueden tener parámetros.
C
Una función recursiva debe tener al menos una llamada a sí misma y una condición de salida.
¿Cuál es la implicación del uso de parámetros de entrada/salida en un procedimiento?
a) El procedimiento puede modificar tanto los valores de entrada como los de salida.
b) Los parámetros de entrada/salida solo pueden ser utilizados como valores de salida.
c) El procedimiento solo puede leer los valores de entrada, pero no modificar ninguno de los valores.
d) Los parámetros de entrada/salida no pueden ser utilizados para modificar las variables de entrada.
A
El procedimiento puede modificar tanto los valores de entrada como los de salida.
¿Cuál de las siguientes afirmaciones es correcta acerca de las funciones con retorno?
a) No es posible tener una función sin valor de retorno.
b) Una función con retorno siempre ejecuta una sentencia return al final.
c) Una función con retorno no puede recibir parámetros.
d) Las funciones con retorno no pueden modificar parámetros.
B
Una función con retorno siempre ejecuta una sentencia return al final.
Suponga el siguiente programa escrito en un lenguaje de programación estándar:
integer x=0; while x<100 do (x=x+1; print x; x=x-1;)
a) Este programa imprime los números enteros del 1 al 100.
b) Este programa imprime los números impares del 1 al 100.
c) Este programa imprime los números pares del 1 al 100.
d) Este programa es un bucle infinito.
D
Este programa es un bucle infinito.
Suponga el siguiente fragmento de código en un lenguaje de programación estándar:
integer i = 0;
while i < 5 do
(i = i + 2;
print i;)
¿Cuál de las siguientes opciones describe correctamente lo que hace este programa?
a) Imprime los números del 1 al 5.
b) Imprime los números del 0 al 5.
c) Imprime los números 2, 4.
d) Imprime los números 1, 3, 5.
C
Imprime los números 2, 4.
integer j = 10;
while j > 0 do
(print j;
j = j - 3;)
¿Qué imprime este programa?
a) Los números del 10 al 1.
b) Los números del 10 al 0.
c) Los números 10, 7, 4, 1.
d) Los números 9, 6, 3, 0.
C
Los números 10, 7, 4, 1.
integer k = 0;
do
(print k;
k = k + 1;)
while k < 3;
¿Qué imprimirá este programa?
a) Imprime 0, 1, 2.
b) Imprime 1, 2, 3.
c) Imprime 0, 1.
d) Imprime 1, 2.
A
Imprime 0, 1, 2.
integer m = 0;
for i = 1 to 5 do
(m = m + i;
print m;)
¿Qué imprimirá este programa?
a) Imprime los números del 1 al 5.
b) Imprime los números 1, 3, 6, 10, 15.
c) Imprime los números 1, 2, 3, 4, 5.
d) Imprime 1, 3, 6, 10, 15.
B
Imprime los números 1, 3, 6, 10, 15.
integer n = 1;
while n <= 5 do
(if n % 2 == 0 then
print n;
n = n + 1;)
¿Qué imprimirá este programa?
a) Imprime 2, 4.
b) Imprime 1, 3, 5.
c) Imprime 1, 2, 3, 4, 5.
d) Imprime 3, 5.
A
Imprime 2, 4.
integer x = 0;
repeat
(x = x + 1;
print x;)
until x >= 3;
¿Qué imprimirá este programa?
a) Imprime 1, 2, 3.
b) Imprime 2, 3.
c) Imprime 0, 1, 2, 3.
d) Imprime 1, 2.
A
Imprime 1, 2, 3.
integer a = 5;
integer b = 10;
if a < b then
print “a is less than b”;
else
print “a is greater than b”;
¿Cuál es el resultado de este programa?
a) Imprime “a is less than b”.
b) Imprime “a is greater than b”.
c) Imprime “a is equal to b”.
d) El programa no imprime nada.
A
Imprime “a is less than b”.
El paso de parámetros a funciones en el lenguaje de programación C++:
A) Es siempre por valor
B) Es por valor siempre que el parámetro sea un tipo primitivo y por referencia cuando sea un objeto
C) Es siempre por referencia
D) Puede hacerse por referencia o por valor
D
Puede hacerse por referencia o por valor
Necesita controlar el plazo de presentación de solicitudes. Suponiendo que utiliza Java en el backend, ¿qué clase nativa de Java puede utilizar para trabajar con una fecha y hora simultáneamente?
a) LocalDateTime.
b) LocalDate.
c) LocalTime.
d) OffsetTime.
A
LocalDateTime
¿Qué clase de Java se utiliza para representar solo una fecha (sin hora) en un formato ISO-8601?
a) LocalDateTime
b) LocalDate
c) ZonedDateTime
d) Instant
B
LocalDate
¿Qué clase de Java se usa para representar una fecha y hora en una zona horaria específica?
a) LocalTime
b) ZonedDateTime
c) LocalDate
d) OffsetDateTime
B
ZonedDateTime
¿Qué clase de Java proporciona una representación de la fecha y hora con la información de la zona horaria, pero con el tiempo representado en UTC?
a) ZonedDateTime
b) OffsetTime
c) Instant
d) LocalDateTime
C
Instant
¿Cuál de las siguientes clases de Java se utiliza para representar un instante en el tiempo (como un timestamp) con una precisión de nanosegundos?
a) LocalDate
b) Instant
c) LocalTime
d) ZonedDateTime
B
Instant
Si quieres trabajar con la duración entre dos fechas en Java, ¿qué clase puedes usar para obtener la diferencia entre dos instantes de tiempo?
a) Period
b) Duration
c) LocalTime
d) TemporalUnit
B
Duration
Tras estudiar varias opciones se ha decidido utilizar .NET con C# para desarrollar el backend, ¿cómo puede indicar la opcionalidad de un tipo de dato?
a) int? Telefono
b) int|null Telefono
c) int:null Telefono
d) int ?? Telefono
A
int? Telefono
En C#, ¿cuál es el operador utilizado para manejar valores nulos y proporcionar un valor por defecto si el valor es null?
a) ??
b) ??=
c) !
d) =>
A
??
En C#, ¿qué palabra clave se utiliza para declarar una clase que no puede ser heredada por otras clases?
a) abstract
b) sealed
c) readonly
d) static
B
sealed
¿Cuál de las siguientes opciones es la forma correcta de crear una lista de enteros en C#?
a) List<int> lista = new List<int>();
b) List<int> lista = List<int>();
c) new List<int> lista = ();
d) int List = new List<int>();</int></int></int></int></int></int>
A
List<int> lista = new List<int>();</int></int>
En C#, ¿qué tipo de dato se usa para representar una colección de caracteres que no cambia de tamaño, como una palabra o frase?
a) List<char>
b) string
c) char[]
d) ArrayList</char>
B
string
En C#, ¿qué tipo de acceso tiene un miembro de clase con el modificador private?
a) Accesible solo dentro de la clase en la que se define
b) Accesible dentro de la misma clase y sus clases derivadas
c) Accesible dentro de la clase y en el ensamblado
d) Accesible desde cualquier parte del programa
A
Accesible solo dentro de la clase en la que se define
Señale la respuesta INCORRECTA sobre el lenguaje Swift:
a) Fue creado por Apple.
b) Se distribuye bajo licencia de código abierto Apache 2.0.
c) Se utiliza exclusivamente para la construcción de aplicaciones para iOS.
d) Algunas de las variables más comunes son String, Int, Double y Bool.
C
Se utiliza exclusivamente para la construcción de aplicaciones para iOS.
¿Cuál de las siguientes afirmaciones sobre Swift es correcta?
a) Es un lenguaje de programación únicamente para sistemas operativos Android.
b) Swift es un lenguaje interpretado, lo que significa que no requiere compilación.
c) Es un lenguaje de programación orientado a objetos y funcional.
d) No se puede usar Swift fuera del ecosistema Apple.
C
Es un lenguaje de programación orientado a objetos y funcional.
¿Qué tipo de seguridad de tipo ofrece el lenguaje Swift?
a) Seguridad de tipo débil.
b) Seguridad de tipo fuerte y estática.
c) Seguridad de tipo dinámica.
d) Seguridad de tipo flexible.
B
Seguridad de tipo fuerte y estática.
En Swift, ¿cuál es la palabra clave utilizada para definir una constante?
a) let
b) var
c) const
d) fixed
A
let
¿Qué se entiende por opcional (Optional) en Swift?
a) Es un tipo de datos que siempre contiene un valor.
b) Es un tipo de datos que puede contener un valor o ser nil (nulo).
c) Es una función que no retorna ningún valor.
d) Es una clase que no puede ser heredada.
B
Es un tipo de datos que puede contener un valor o ser nil (nulo).
¿Cuál de las siguientes opciones es incorrecta sobre Swift?
a) Swift es un lenguaje de programación de código abierto.
b) Swift es más rápido que Objective-C en todos los casos.
c) Swift soporta programación orientada a objetos.
d) Swift permite trabajar con closures (bloques de código reutilizables).
B
Swift es más rápido que Objective-C en todos los casos.
¿Qué hará el siguiente código de JavaScript console.log(10 === ‘10’)?
a) Imprimirá true.
b) Imprimirá false.
c) Dará error.
d) Imprimirá ‘1010’.
B
Imprimirá false.
¿Qué imprimirá el siguiente código de JavaScript?
console.log(0 == ‘0’);
a) true
b) false
c) error
d) ‘00’
A
TRUE
¿Qué hará el siguiente código de JavaScript?
console.log(10 !== ‘10’);
a) true
b) false
c) error
d) ‘10’
A
TRUE
¿Qué imprimirá el siguiente código de JavaScript?
console.log(5 < 10 && 10 < 15);
a) true
b) false
c) error
d) NaN
A
true
¿Qué imprimirá el siguiente código de JavaScript?
console.log(2 + ‘2’);
a) 4
b) 22
c) ‘2 2’
d) error
B
22
¿Qué imprimirá el siguiente código de JavaScript?
console.log(null == undefined);
a) true
b) false
c) error
d) undefined
A
TRUE
Indique la respuesta correcta respecto al lenguaje de programación F#:
a) El literal tipo sbyte es un número natural de 8 bits sin signo.
b) La palabra clave let enlaza un nombre a un valor o función.
c) Para realizar comentarios en el código de múltiples líneas se utiliza //* para iniciar el comentario y *// para cerrarlo.
d) La expresión “let immutable x = 1” es correcta.
B
La palabra clave let enlaza un nombre a un valor o función.
¿Cuál de las siguientes afirmaciones es correcta sobre la mutabilidad de las variables en F#?
a) En F#, todas las variables son mutables por defecto.
b) En F#, las variables son inmutables por defecto, y para hacerlas mutables, se debe utilizar la palabra clave mutable.
c) F# no permite crear variables mutables.
d) Las variables inmutables en F# se declaran usando la palabra clave var.
B
En F#, las variables son inmutables por defecto, y para hacerlas mutables, se debe utilizar la palabra clave mutable.
¿Cómo se define una función anónima en F#?
a) let func = fun x -> x + 1
b) fun x -> x + 1
c) let func = x -> x + 1
d) function x -> x + 1
A
let func = fun x -> x + 1
¿Qué tipo de datos es utilizado en F# para representar una tupla?
a) tuple
b) array
c) list
d) (int, string)
D
(int, string)
¿Cuál es la palabra clave utilizada en F# para definir una clase?
a) type
b) class
c) let
d) new
B
class
¿Cómo se define un valor constante en F#?
a) let constant = 10
b) val constant = 10
c) const constant = 10
d) let constant with value = 10
A
let constant = 10
En Java SE 17, ¿con qué visibilidad se deben generar los atributos de la clase Data Access Object Solicitudes si se quiere tener acceso directamente desde cualquier otro objeto, sin mediación de métodos?
a) Se usará el modificador “public”.
b) Se usará el modificador “protected”.
c) No se usará ningún modificador.
d) Se usará el modificador “private”.
A
Se usará el modificador “public”.
¿Cuál de las siguientes afirmaciones sobre los records en Java SE 17 es correcta?
a) Un record en Java puede extender de otra clase.
b) Un record en Java puede tener atributos private y public.
c) Un record en Java no puede modificar los valores de sus atributos una vez creados.
d) Un record en Java requiere siempre un constructor sin argumentos.
C
Un record en Java no puede modificar los valores de sus atributos una vez creados.
En Java SE 17, ¿qué ocurre si en una sealed class no se especifican las clases que pueden extenderla?
a) Cualquier clase puede extenderla.
b) No se puede compilar el código.
c) Solo las clases dentro del mismo paquete pueden extenderla.
d) Se comporta como una clase final.
B
No se puede compilar el código.
¿Cuál de las siguientes opciones describe mejor la función del operador instanceof en Java SE 17?
a) Permite verificar si una variable es de un tipo específico en tiempo de ejecución.
b) Se usa para comparar valores primitivos en Java.
c) Convierte automáticamente un objeto a la clase especificada.
d) Permite acceder a métodos privados de una clase.
A
Permite verificar si una variable es de un tipo específico en tiempo de ejecución.
¿Qué pasará si intentamos compilar y ejecutar un método main en una interfaz en Java SE 17?
a) No se permite definir un método main en una interfaz.
b) Se puede definir y ejecutar sin problemas.
c) Se puede definir, pero no ejecutar.
d) Solo se puede definir si es default.
B
Se puede definir y ejecutar sin problemas.
En Java SE 17, si una record implementa una interfaz, ¿qué restricciones se aplican?
a) No puede implementar interfaces.
b) Puede implementar interfaces, pero no puede sobrescribir sus métodos.
c) Puede implementar interfaces y debe proporcionar implementaciones de los métodos abstractos.
d) Solo puede implementar una única interfaz.
C
Puede implementar interfaces y debe proporcionar implementaciones de los métodos abstractos.
En Java SE 17, ¿cuál de los siguientes tipos de colección no admite duplicados?
a) List
b) Stack
c) Collection
d) Set
D
Set
¿Cuál de las siguientes clases de Java SE 17 es inmutable?
a) StringBuilder
b) StringBuffer
c) String
d) ArrayList
C
String
En Java, la clase String es inmutable, lo que significa que una vez creado un objeto String, su valor no puede modificarse. En cambio, StringBuilder y StringBuffer son mutables, permitiendo modificaciones sin crear nuevos objetos.
¿Qué estructura de datos se debe usar en Java SE 17 si se requiere una colección ordenada sin duplicados?
a) ArrayList
b) HashSet
c) TreeSet
d) LinkedList
C
TreeSet
En Java SE 17, ¿qué interfaz permite trabajar con una colección en la que los elementos se almacenan en orden clave-valor?
a) Set
b) Queue
c) Map
d) List
C
Map
¿Cuál de las siguientes implementaciones de Queue en Java SE 17 sigue la política FIFO (First In, First Out)?
a) PriorityQueue
b) Stack
c) Deque
d) LinkedList
D
LinkedList
¿Cuál de las siguientes implementaciones de Map en Java SE 17 mantiene el orden de inserción de los elementos?
a) HashMap
b) TreeMap
c) LinkedHashMap
d) WeakHashMap
C
LinkedHashMap
Que es un compilador ?
Un compilador es un programa que traduce el código fuente escrito en un lenguaje de programación de alto nivel (como C, C++, Java, etc.) a un lenguaje de máquina o código ejecutable por la computadora. El proceso de compilación convierte el código comprensible por los humanos en instrucciones que el procesador del ordenador puede entender y ejecutar directamente.
Señale la afirmación correcta sobre la programación orientada a objetos y la programación procedimental:
a) La encapsulación es una funcionalidad propia de la programación procedimental.
b) La herencia es una característica de la programación procedimental que permite reaprovechar el código.
c) El paso de variables por referencia en la llamada a una función permite que esta modifique múltiples variables del procedimiento que la llama.
d) En la programación orientada a objetos, en la definición de clases no se pueden usar las funciones.
C
El paso de variables por referencia en la llamada a una función permite que esta modifique múltiples variables del procedimiento que la llama.
¿Cuál de los siguientes conceptos es exclusivo y fundamental en la programación orientada a objetos?
a) Uso de subrutinas.
b) Encapsulación.
c) Estructuras de control secuenciales.
d) Paso de parámetros por valor.
B
Encapsulación
En la programación procedimental, ¿qué efecto tiene el paso de parámetros por valor en una función?
a) Permite modificar directamente las variables originales utilizadas en la llamada.
b) Hace que la función trabaje con copias de los valores, sin modificar las variables originales.
c) Obliga a crear variables globales para la comunicación entre funciones.
d) Impide el paso de datos entre funciones.
B
Hace que la función trabaje con copias de los valores, sin modificar las variables originales.
La herencia es un mecanismo de la programación orientada a objetos que:
a) Permite definir funciones globales para toda la aplicación.
b) Facilita que una clase derive de otra heredando sus atributos y métodos.
c) Impide la reutilización del código al obligar a reescribir cada método.
d) Es una técnica utilizada en la programación procedimental para modularizar el código.
B
Facilita que una clase derive de otra heredando sus atributos y métodos.
En el contexto de la programación orientada a objetos, ¿qué es el polimorfismo?
a) La capacidad de una función para tener múltiples nombres.
b) La posibilidad de una variable de tomar diferentes tipos de datos.
c) La capacidad de que un mismo método se comporte de manera distinta según el objeto que lo invoque.
d) La técnica para encapsular datos en estructuras.
C
La capacidad de que un mismo método se comporte de manera distinta según el objeto que lo invoque.
¿Cuál es la diferencia principal entre la sobrecarga y la sobreescritura (override) de métodos en la programación orientada a objetos?
a) La sobrecarga permite que dos métodos tengan el mismo nombre y firma, mientras que la sobreescritura solo cambia el nombre del método.
b) La sobrecarga se da dentro de la misma clase con diferentes firmas, mientras que la sobreescritura implica redefinir un método heredado en una clase derivada.
c) La sobrecarga es exclusiva de la programación procedimental, y la sobreescritura es exclusiva de la programación orientada a objetos.
d) No existe diferencia, ambos conceptos se refieren a la misma técnica.
B
La sobrecarga se da dentro de la misma clase con diferentes firmas, mientras que la sobreescritura implica redefinir un método heredado en una clase derivada.
¿Qué símbolos se utilizan en Python para los diccionarios?
a) ( ) Paréntesis
b) [ ] Corchetes
c) { } Llaves
d) < > Pico paréntesis
C
{ } Llaves
¿Qué comando se utiliza para instalar paquetes en un entorno virtual de Python?
a) venv
b) activate
c) pip install
d) pipfreeze
C
pip install
¿Qué hace el comando pip freeze > requirements.txt?
a) Instala los paquetes listados en el archivo requirements.txt.
b) Envía los paquetes instalados a un archivo de requisitos.
c) Lista los paquetes instalados en el entorno actual.
d) Activa un entorno virtual.
B
Envía los paquetes instalados a un archivo de requisitos.
¿Cuál es el propósito principal de crear entornos virtuales en Python?
a) Para acelerar la ejecución del código.
b) Para facilitar la escritura del código.
c) Para aislar las dependencias de cada proyecto.
d) Para mejorar la seguridad del sistema operativo.
C
Para aislar las dependencias de cada proyecto.
¿Qué operador se utiliza en Python para verificar si un elemento está contenido en otro objeto, como una cadena?
a) ==
b) !=
c) in
d) is
C
in
¿Qué estructura de datos en Python almacena pares clave-valor?
a) Lista
b) Tupla
c) Diccionario
d) Conjunto
C
Diccionario
¿Cuál es el resultado de la siguiente expresión en Python? 1 == 1.0
a) Error
b) False
c) True
d) None
C
True
Qué hace el método .head() en un DataFrame de Pandas?
a) Devuelve estadísticas descriptivas del DataFrame.
b) Muestra las primeras filas del DataFrame.
c) Selecciona filas basadas en una condición.
d) Aplica una función a cada columna del DataFrame.
B
Muestra las primeras filas del DataFrame.