Documentos de Académico
Documentos de Profesional
Documentos de Cultura
Instrucciones
Historial de intentos
Las respuestas correctas estarán disponibles del 13 de mayo en 23:55 al 14 de mayo en 23:55.
Una pieza puede ser rotada 90, 180 o 270 grados. Además, puede volcarse.
Como ejemplo de lo anterior, las siguientes imágenes corresponden a un mismo
tipo de pieza:
Arrays.not_equals(img1[i], img2[i])
img1 != img2
img1[i] != img2[i]
!Arrays.equals(img1[i], img2[i])
Pregunta 2 5 / 5 pts
Una pieza puede ser rotada 90, 180 o 270 grados. Además, puede volcarse.
Como ejemplo de lo anterior, las siguientes imágenes corresponden a un mismo
tipo de pieza:
No resuelve el problema ya que solamente se rota una de las imágenes, no las dos.
Pregunta 3 5 / 5 pts
Una pieza puede ser rotada 90, 180 o 270 grados. Además, puede volcarse.
Como ejemplo de lo anterior, las siguientes imágenes corresponden a un mismo
tipo de pieza:
Su tarea es implementar un programa que reciba las matrices de dos imágenes e
indique si las imágenes corresponden a piezas del mismo tipo.
rotada[i][j] = img[j][i];
return rotada;
rotada[i][j] = img[i][4-j];
return rotada;
}
static byte[][] rotar_imagen(byte[][] img) {
rotada[4-j][i] = img[i][j];
return rotada;
rotada[i][j] = img[4-j][i];
return rotada;
rotada[4-j][i] = img[i][j] rota la matriz en el sentido contrario a las manecillas del reloj.
Por tanto, ésta es la opción correcta.
Pregunta 4 5 / 5 pts
David cree que si representa el texto como un arreglo de valores char en lugar de
como un String, su programa será más eficiente. La instrucción que le permite
convertir el código representado como String en un arreglo de chars es:
char[] cod_arr = (char[]) cod;
No es posible hacer una conversión directa de String a char[], por lo que las
instrucciones
Pregunta 5 5 / 5 pts
Una pieza puede ser rotada 90, 180 o 270 grados. Además, puede volcarse.
Como ejemplo de lo anterior, las siguientes imágenes corresponden a un mismo
tipo de pieza:
rotada[i][j] = img[i][4-j];
return rotada;
rotada[i][j] = img[j][i];
return rotada;
rotada[i][j] = img[4-j][i];
return rotada;
}
static byte[][] rotar_imagen(byte[][] img) {
rotada[4-j][i] = img[i][j];
return rotada;
rotada[4-j][i] = img[i][j] rota la matriz en el sentido contrario a las manecillas del reloj.
Por tanto, ésta es la opción correcta.
Pregunta 6 5 / 5 pts
Una de las funcionalidades con que David desea que cuente su editor es la de
calcular el número de líneas de código en un archivo. El editor debe contar
únicamente las líneas no vacías.
El programa cuenta las ocurrencias del símbolo ‘\n’, lo cual es igual al número de
líneas en el código. Se omite en la cuenta los símbolos de nueva línea precedidos
de símbolos idénticos, ya que estos corresponden a líneas vacías.
codigo.charAt(i)=='\n'
Pregunta 7 5 / 5 pts
Así, en los meses 1 y 2 se tendría únicamente una pareja. Para el mes 3, habría
ya una nueva pareja, para un total de 2. En el mes 4, la pareja ya madura tendría
una nueva pareja, completando 3 parejas. En el mes 5, la primera pareja y su
primera pareja cría engendrarían dos nuevas parejas, siendo la población total 5
parejas.
89
12
144
parejas(2) = 1
parejas(1) = 1
entonces
parejas(3) = 1 + 1 = 2
parejas(4) = 2 + 1 = 3
parejas(5) = 3 + 2 = 5
parejas(6) = 5 + 3 = 8
parejas(7) = 8 + 5 = 13
parejas(8) = 13 + 8 = 21
parejas(9) = 21 + 13 = 34
parejas(10) = 34 + 21 = 55
parejas(11) = 55 + 34 = 89
parejas(12) = 89 + 55 = 144
233
Pregunta 8 5 / 5 pts
David ha notado que cuando se requiere imprimir el código sería de gran utilidad
(por la cantidad de papel gastado) eliminar la indentación: el margen izquierdo de
las líneas. La instrucción que le permite tomar una línea de código y eliminar su
margen izquierdo es:
linea = linea.trim();
linea = linea.trim();
linea = linea.removeLeftMargin();
trim();
removeLeftMargin();
Pregunta 9 5 / 5 pts
Se desea implementar el sistema de visión de un robot clasificador de piezas. El
robot ve a través de una cámara que transforma la imagen de cada pieza en una
matriz de 5 filas y 5 columnas. Cada celda de la matriz contiene un 1 o un 0, de
acuerdo a si el color en dicho píxel es negro o blanco, respectivamente.
Una pieza puede ser rotada 90, 180 o 270 grados. Además, puede volcarse.
Como ejemplo de lo anterior, las siguientes imágenes corresponden a un mismo
tipo de pieza:
rotada[i][j] = img[4-j][i];
return rotada;
}
static byte[][] reflejar(byte[][] img) {
rotada[4-j][i] = img[i][j];
return rotada;
rotada[i][j] = img[i][4-j];
return rotada;
rotada[4-j][i] = img[i][j] rota la matriz en el sentido contrario a las manecillas del reloj.
rotada[i][j] = img[i][4-j] refleja la matriz invirtiendo el orden de las columnas. Por tanto,
ésta es la opción correcta.
rotada[i][j] = img[j][i];
return rotada;
}
Pregunta 10 5 / 5 pts
Una pieza puede ser rotada 90, 180 o 270 grados. Además, puede volcarse.
Como ejemplo de lo anterior, las siguientes imágenes corresponden a un mismo
tipo de pieza:
Antes de procesar una imagen, debe verificarse que ésta tenga el tamaño
adecuado (5 filas y 5 columnas). La expresión que permita hacer dicha
verificación es:
img.length == 25
Para obtener el número de filas de una matriz se usa su atributo length (img.-length).
Por otra parte, para conocer el número de columnas basta con consultar el número
de elementos de cualquiera de las filas de la matriz (matriz[0].length).
img.length == 5
Pregunta 11 5 / 5 pts
Una pieza puede ser rotada 90, 180 o 270 grados. Además, puede volcarse.
Como ejemplo de lo anterior, las siguientes imágenes corresponden a un mismo
tipo de pieza:
Antes de procesar una imagen, debe verificarse que ésta contenga únicamente
los valores 0 y 1. Se desea un método que retorne verdadero si la imagen es
correcta o falso si contiene colores no aceptados (valores diferentes a 0 ó 1).
Pregunta 12 5 / 5 pts
Una de las funcionalidades con que David desea que cuente su editor es la de
eliminar líneas vacías del código. El siguiente método recibe un código y retorna
el código sin líneas vacías.
Para que el método sea correcto, <condicion> debe ser reemplazado por:
charAt(i-1)=='\n'
charAt(i)!='\n' || codigo.charAt(i-1)!='\n'
Una cadena vacía es representada por un símbolo ‘\n’ precedido de otro símbolo
igual.
codigo.charAt(i-1)=='\n' solamente copia el símbolo que inicia cada fila, no las filas
completas.
charAt(i)!='\n'
Pregunta 13 5 / 5 pts
Así, en los meses 1 y 2 se tendría únicamente una pareja. Para el mes 3, habría
ya una nueva pareja, para un total de 2. En el mes 4, la pareja ya madura tendría
una nueva pareja, completando 3 parejas. En el mes 5, la primera pareja y su
primera pareja cría engendrarían dos nuevas parejas, siendo la población total 5
parejas.
10946
6765
parejas(20) = parejas(19) + parejas(18)
parejas(19) = parejas(18) + parejas(17)
parejas(18) = parejas(17) + parejas(16)
parejas(17) = parejas(16) + parejas(15)
parejas(16) = parejas(15) + parejas(14)
parejas(15) = parejas(14) + parejas(13)
parejas(14) = parejas(13) + parejas(12)
parejas(13) = parejas(12) + parejas(11)
parejas(12) = parejas(11) + parejas(10)
parejas(11) = parejas(10) + parejas(9)
parejas(10) = parejas(9) + parejas(8)
parejas(9) = parejas(8) + parejas(7)
parejas(8) = parejas(7) + parejas(6)
parejas(7) = parejas(6) + parejas(5)
parejas(6) = parejas(5) + parejas(4)
parejas(5) = parejas(4) + parejas(3)
parejas(4) = parejas(3) + parejas(2)
parejas(3) = parejas(2) + parejas(1)
parejas(2) = 1
parejas(1) = 1
entonces
parejas(3) = 1 + 1 = 2
parejas(4) = 2 + 1 = 3
parejas(5) = 3 + 2 = 5
parejas(6) = 5 + 3 = 8
parejas(7) = 8 + 5 = 13
parejas(8) = 13 + 8 = 21
parejas(9) = 21 + 13 = 34
parejas(10) = 34 + 21 = 55
parejas(11) = 55 + 34 = 89
parejas(12) = 89 + 55 = 144
parejas(13) = 144 + 89 = 233
parejas(14) = 233 + 144 = 377
parejas(15) = 377 + 233 = 610
parejas(16) = 610 + 377 = 987
parejas(17) = 987 + 610 = 1597
parejas(18) = 1597 + 987 = 2584
parejas(19) = 2584 + 1597 = 4181
parejas(20) = 4181 + 2584 = 6765
4181
2584
Pregunta 14 5 / 5 pts
Las calles de la ciudad de Bacatá forman una cuadrícula perfecta, como se
muestra en la ilustración 1.
Las vías horizontales son llamadas calles y están enumeradas iniciando en 1. Las
vías verticales son llamadas carreras y están numeradas de igual forma.
El alcalde de Bacatá ha decidido modificar la forma en que las tarifas de los taxis
son calculadas, considerando la geometría de la ciudad. Las nuevas tarifas se
calcularán de acuerdo a la calle y carrera de la intersección donde se toma el taxi,
así como a la calle y carrera donde finaliza el viaje. Específicamente, el costo de
un viaje se calcula como
El método
El método
El método
Pregunta 15 5 / 5 pts
Una pieza puede ser rotada 90, 180 o 270 grados. Además, puede volcarse.
Como ejemplo de lo anterior, las siguientes imágenes corresponden a un mismo
tipo de pieza:
El tipo de dato más apropiado para representar una imagen en el lenguaje java
es:
double[][]
byte[][]
La matriz que representa una imagen está compuesta únicamente de 1s y 0s, los
cuales son valores enteros. Además, cada dato hace uso solamente de un bit, por lo
que debería usarse un tipo de dato lo más pequeño posible. El tipo de dato entero
más pequeño es byte. Dado que es una matriz, el tipo byte debe ir acompañado de
dos parejas de corchetes (byte[][]).
double[]
int[][]
Pregunta 16 5 / 5 pts
Una de las funcionalidades con que David desea que cuente su editor es la de
decidir si un nombre de variable es válido o no. Recuerde que un nombre de
variable válido puede contener únicamente letras, dígitos, guiones bajos (_) y
signos de dólar ($). Además, el primer símbolo del nombre no puede ser un dígito.
((c >= ’A’ || c <= ’Z’) && (c >= ’a’ || c <= ’z’)) || (c >= ’0’ || c <= ’9’)
|| c == ’_’ || c == ’$’
(c >= ’A’ && c <= ’Z’) || (c >= ’a’ && c <= ’z’) || (c >= ’0’ && c <= ’9’) |
| c == ’_’ || c == ’$’
Un carácter corresponde a una letra si su código se encuentra entre el código de ‘A’
y el código de ‘Z’, o entre el código de ‘a’ y el código de ‘z’.
(c >= ’A’ && c <= ’Z’) || (c >= ’a’ && c <= ’z’) || (c >= ’0’ &&
c <= ’9’) || c == ’_’ || c == ’$’
(c >= ’A’ && c <= ’a’) || (c >= ’Z’ && c <= ’z’) || (c >= ’0’ && c <= ’9’) |
| c == ’_’ || c == ’$’
((c >= ’A’ || c <= ’a’) && (c >= ’Z’ || c <= ’z’)) || (c >= ’0’ || c <= ’9’)
|| c == ’_’ || c == ’$’
Pregunta 17 5 / 5 pts
Una de las funcionalidades con que David desea que cuente su editor es la de
decidir si un nombre de variable es válido o no. Recuerde que un nombre de
variable válido puede contener únicamente letras, dígitos, guiones bajos (_) y
signos de dólar ($). Además, el primer símbolo del nombre no puede ser un dígito.
La expresión que permite verificar si el primer símbolo del nombre es un dígito es:
Pregunta 18 5 / 5 pts
Así, en los meses 1 y 2 se tendría únicamente una pareja. Para el mes 3, habría
ya una nueva pareja, para un total de 2. En el mes 4, la pareja ya madura tendría
una nueva pareja, completando 3 parejas. En el mes 5, la primera pareja y su
primera pareja cría engendrarían dos nuevas parejas, siendo la población total 5
parejas.
La implementación
Pregunta 19 5 / 5 pts
hasPrefix(“//”);
startsWith(“//”);
linea.prefix(“//”);
beginsWith(“//”);
Pregunta 20 5 / 5 pts
Las vías horizontales son llamadas calles y están enumeradas iniciando en 1. Las
vías verticales son llamadas carreras y están numeradas de igual forma.
El alcalde de Bacatá ha decidido modificar la forma en que las tarifas de los taxis
son calculadas, considerando la geometría de la ciudad. Las nuevas tarifas se
calcularán de acuerdo a la calle y carrera de la intersección donde se toma el taxi,
así como a la calle y carrera donde finaliza el viaje. Específicamente, el costo de
un viaje se calcula como
Correcta. Dado que la calle y carrera de destino son siempre mayores que la calle y
carrera de origen, no es necesario el uso de valor absoluto.