¿Cuál es el punto de entrada de un programa visual en el lenguaje C#? El programa comienza con la primera línea de código del formulario El programa comienza con la primera directiva using. El programa comienza con función principal 'main'.
El programa comienza con el primer signo de llave '{' abierta en alguna parte del
programa. ¿Cuáles son los dos pasos del proceso de ejecución de un programa en el lenguaje
C#? El enlazamiento seguido de la compilación.
La compilación seguida por el ensamblado.
La compilación seguida por la ejecución La compilación seguida por la interpretación. El compilador traduce un archivo .cs a un: Archivo .cil Archivo .exe Archivo .obj Archivo .lib. ¿Cuál de las siguientes sentencias es verdadera? Los comentarios son útiles para escribir notas y explicaciones dentro del
código Los malos comentarios pueden ser peores que no tenerlos El compilador cuando compila el programa, se salta cualquier comentario y no
lo toma en cuenta. Todas las opciones anteriores.
. Se necesita incluir la librería __________ para utilizar la clase MessageBox y utilizar
los controles del cuadro de herramientas (tool box). Se necesita incluir la librería
__________ para utilizar objetos gráficos.
Librería System.Windows y System.Graphics. Librería System.Windows.Forms y System.Drawing.
Librería System.Data y System.Drawing Librería System.Windows.Forms y System.Graphics.
. Dados los siguientes valores: A = Verdadero; B = Falso; C = Verdadero. Evalúe la
siguiente expresión lógica: <br/>(12 != 20) || !(A && B || C)
Falso Verdadero 12 20. Dado el siguiente fragmento de código:<br/>int a = 7; <br/>int b = 2; <br/>int c; <br/>c
= a++ * b--;<br/>a = 2 * b++;<br/>b = 25 % a--; <br/>Console.WriteLine($"a = {a}");
<br/>Console.WriteLine($"b = {b}");<br/>Console.WriteLine($"c = {c}");<br/>¿Cuáles
son los valores de las variables 'a', 'b' y 'c'? 2, 0, 8 4, 1, 8
1, 1, 14 4, 1, 14. Dado el siguiente fragmento de código:<br/>int a = 7;<br/>int b = 2;<br/>int c; <br/>c
= (14 / a++) * (3 * b--);<br/>c = (3 * a++) * (3 + b++);<br/>a = (2 * b++) * (4 * a++);
<br/>b = 25 % a--;<br/>Console.WriteLine($"a = {a}");<br/>Console.WriteLine($"b =
{b}");<br/>Console.WriteLine($"c = {c}");<br/>¿Cuáles son los valores de las variables
'a', 'b' y 'c'?
140, 25, 96 144, 25, 98 144, 25, 96 143, 25, 96. Dado el siguiente fragmento de código:<br/>float x = 9;<br/>float y;<br/>float z;
<br/>y = (float)Math.Sqrt(x) * 3 + (float)Math.Pow(x, 2);<br/>z = 27 /
(float)Math.Sqrt(x) + (2 * (float)Math.Pow(x, 3) / 3);<br/>Console.WriteLine($"x =
{x}");<br/>Console.WriteLine($"y = {y}");<br/>Console.WriteLine($"z = {z}");
<br/>¿Cuáles son los valores de las variables 'a', 'b' y 'c'? 9, 96, 492
9, 90, 495 9, 96, 490 9, 98, 492
. Rellene los espacios en blanco respectivamente. La palabra clave ________ puede ser
utilizada para salir inmediatamente desde un bucle. La palabra clave ________
inmediatamente salta al siguiente ciclo de un bucle.
Rellene los espacios en blanco respectivamente. La palabra clave ________ puede ser
utilizada para salir inmediatamente desde un bucle. La palabra clave ________
inmediatamente salta al siguiente ciclo de un bucle.
next, exit break, continue return, break. ¿Qué valor se asigna a la variable consumo en la sentencia if-else anidadas,
considerando que la velocidad es 120?<br/>if (velocidad > 80)<br/> consumo =
10.00;<br/>else if (velocidad > 100)<br/> consumo = 12.00;<br/>else if (velocidad >
120)<br/> consumo = 15.00;<br/>else if (velocidad > 140)<br/> consumo = 20.00; 20 15 12 10. ¿Qué declaración es falsa? Una función es una unidad de código diseñada para ejecutar una cierta tarea,
para lo cual una función típicamente ingresa alguna información y/o retorna
alguna información. Cuando se ejecuta una función se dice que ha sido llamada o invocada. El cuerpo de la función consiste de un código que será ejecutado cuando la
función sea ejecutada.
Ninguna de las anteriores.
. ¿Qué declaración es verdadera? Se puede declarar o definir una función dentro de otra función La definición de una función tiene un tipo de retorno, un nombre o identificador,
una lista de parámetros y un cuerpo La implementación de una función termina en punto y coma, mientras que el
prototipo de una función no termina con punto y coma. Un argumento y un parámetro son lo mismo. Verdadero o falso: a) El valor de una variable local a una función, persiste a lo largo
de las diferentes llamadas de todas las funciones; b) Dos distintas funciones Fun1 y
Fun2 declaran una variable local con el mismo nombre y el mismo tipo, por ejemplo:
float x. ¿La variable x de la función Fun1 y la variable x de la función Fun2 son
diferentes? Verdadero, Verdadero
Verdadero, Falso Falso, Verdadero Falso, Falso. Evalue la siguiente instrucción: float y = (float)Math.Floor(2.97)+2; 4.00 4.97 5.00 0.00
. Evalue la siguiente instrucción: float y = (float)Math.Ceiling(3.25)+3; 6.00 6.25 7.00
0.00
. Evalue la siguiente instrucción: float y = (float)Math.Round(11.34)+3; 15.00 14.00 14.34 0.00
. Verdadero o falso: a) Se puede utilizar tanto referencias como punteros para
modificar más de un resultado en la salida desde una función en C#; b) C# soporta
tanto estructuras (struct) como clases (class). Verdadero, Verdadero
Verdadero, Falso Falso, Verdadero Falso, Falso. ¿Cuál de los siguientes elementos no es parte de la firma de una función para que
sea sobrecargada? Nombre de la función Lista de parámetros Tipo de retorno Ninguno de los anteriores
. Verdadero o falso: a) Un menú de selección visual presenta un grupo de opciones
que el usuario puede seleccionar utilizando objetos Button; b) Un menú de selección
básico visual se compone por una estructura de selección switch() y al menos un
bucle while() o do-while(), que permiten repetir la selección del código. Verdadero, Verdadero
Verdadero, Falso Falso, Verdadero Falso, Falso. ¿Cuál de las siguientes declaraciones no es verdadera? Las clases (class) permiten al programador definir nuevos tipos de datos fuera de los tipos de datos existentes en C# Para acceder a los datos miembros y a los métodos de una clase se utilizan
objetos desde una clase externa Se utiliza el operador punto (dot operator) para acceder a los datos miembros y
a los métodos de una clase a través de objetos en la misma clase Ninguna de las anteriores. ¿Cuál de las siguientes declaraciones no es una motivación para trabajar con la
programación orientada a objetos? Protección de datos. Reutilización de código Organización Ninguna de las anteriores. Verdadero o falso: a) Un archivo .cs en la interpretación es convertido a un archivo
bytecode (.cil); b) En general, las implementaciones de los métodos van dentro de la
clase y no fuera de ella Verdadero, Verdadero Verdadero, Falso Falso, Verdadero
Falso, Falso
. Suponga que tiene una función miembro, que al ejecutarla espera que un dato
miembro esté dentro de un cierto rango de valores. Para evitar que el dato miembro
se modifique al salir fuera de este rango, se debe...
Utilizar una sentencia if() y variables locales Hacer que los datos sean públicos Hacer que los datos sean privados y utilizar una sentencia if().
Ninguna de las anteriores. Considere la siguiente clase: <br/>public class Figura<br/>{<br/>}<br/>¿Qué
métodos contiene esta clase, si se crean objetos de la misma? Constructor copia.
Constructor y recolector de basura. Operador de asignación Todas las opciones de arriba. Verdadero o falso: a) Un constructor es el lugar ideal para inicializar los datos
miembro y objetos de una clase, antes de declarar una instancia de esa clase; b) Se
pueden tener n-constructores sobrecargados con diferentes tipos de parámetros y
diferente número de parámetros.
Verdadero, Verdadero
Verdadero, Falso Falso, Verdadero Falso, Falso. En la función VectorToPointF(), de la clase Vector2D se convierte coordenadas del
mundo real al mundo de la Computación Gráfica utilizando las siguientes fórmulas,
considerando un área de trabajo de 800x600: xp = x*SF-400; yp = (-1)*(-y)*SF + 300;
xp = x*SF+400; yp = (-1)*y*SF + 300 xp = x*SF-200; yp = (-1)*(-y)*SF + 150; xp = x*SF+200; yp = (-1)*y*SF + 150;. Para graficar un círculo en función de una elipse desde el punto P0(0, 0), se utiliza el
siguiente código: mGraph.DrawEllipse(mPen, 0, 0, mRadius*SF, mRadius*SF) mGraph.DrawEllipse(mPen, 0, 0, 4*mRadius*SF, 4*mRadius*SF) mGraph.DrawEllipse(mPen, 0, 0, 3*mRadius*SF, 3*mRadius*SF); mGraph.DrawEllipse(mPen, 0, 0, 2*mRadius*SF, 2*mRadius*SF);
. Para graficar un cuadrado en función de un rectángulo desde el punto P0(0, 0), se
utiliza el siguiente código: mGraph.DrawRectangle(mPen, 0, 0, 2*mSide*SF, 2*mSide*SF); mGraph.DrawRectangle(mPen, 0, 0, 3*mSide*SF, 3*mSide*SF); mGraph.DrawRectangle(mPen, 0, 0, mSide*SF, mSide*SF);
mGraph.DrawRectangle(mPen, 0, 0, 4*mSide*SF, 4*mSide*SF);
. Para graficar un rectángulo desde el punto P0(0, 0), se utiliza el siguiente código mGraph.DrawRectangle(mPen, 0, 0, mWidth*SF, mHeight*SF);
mGraph.DrawRectangle(mPen, 0, 0, 2*mWidth*SF, 2*mHeight*SF); mGraph.DrawRectangle(mPen, 0, 0, 3*mWidth*SF, 3*mHeight*SF); mGraph.DrawRectangle(mPen, 0, 0, 4*mWidth*SF, 4*mHeight*SF);. Para graficar un triángulo cualquiera los valores de los vértices son: A(0,0); B(a, 0); C(b*cos(A), b*sen(A)) A(0,0); B(b, 0); C(b*cos(A), b*sen(A)) A(0,0); B(c, 0); C(b*sen(A), b*cos(A))
A(0,0); B(c, 0); C(b*cos(A), b*sen(A)). Verdadero o falso: a) La función DrawLine() tiene tres funciones sobrecargadas para
graficar una línea; b) Para graficar una línea en el mundo de la Computación Gráfica
es necesario que a cada coordenada 'x' e 'y' se multiplique por un factor de
escalamiento para hacer un Zoom-In y un Zoom-Out de la figura geométrica.
Verdadero, Verdadero
Verdadero, Falso Falso, Verdadero Falso, Falso. Verdadero o falso: a) GDI (Graphics Device Interface) es uno de los tres
componentes o subsistemas de la interfaz de usuario de Microsoft Windows que
trabaja junto con el núcleo y la API de Windows; b) GDI es una interfaz de
programación de aplicaciones que se encarga del control gráfico de los dispositivos
de salida, como los monitores o las impresoras y de varios dispositivos de entrada,
como teclado, ratón y Joystick. Verdadero, Verdadero
Verdadero, Falso Falso, Verdadero Falso, Falso. Verdadero o falso: a) Las tareas más comunes de GDI son: el dibujo de líneas,
curvas, polígonos, relleno de cuadros, círculos, polígonos, entre otras figuras, se
encarga del renderizado de fuentes y texto, manejo de paletas; b) GDI no se encarga
del dibujo de los menús, ventanas, etc., ya que este es un trabajo especial para el
user32.dll que es una biblioteca de la API de Windows exclusiva para estas
funciones. Verdadero, Verdadero
Verdadero, Falso Falso, Verdadero Falso, Falso
. Verdadero o falso: a) La capacidad más significativa del GDI es la escalabilidad de
posibilidades y la abstracción que se puede conseguir con los dispositivos de salida
y entrada; b) La mayoría de los videojuegos simples en 2D se pueden crear usando
GDI, sin embargo no es lo suficientemente poderosa para la creación de videojuegos
complejos como en 3D debido a la falta de sincronización con el framebuffer
encargado de las animaciones y su obvia incapacidad para la renderización de
modelos y objetos 3D. Verdadero, Verdadero Verdadero, Falso Falso, Verdadero
Falso, Falso . Verdadero o falso: a) Se puede utilizar tanto referencias como punteros para
modificar más de un resultado en la salida desde una función en C#; b) C# soporta
tanto estructuras (struct) como clases (class). Verdadero, Verdadero Verdadero, Falso Falso, Verdadero
Falso, Falso. Verdadero o falso: a) En la función EvaluateFunction(), de la clase
CCuadraticFunction, para graficar una parábola dentro del dominio [-20, 20], con un
tamaño de paso h=1, se requiere tener un arreglo de puntos de tipo Point cuyo
tamaño es 21; b) En la función EvaluateFunction(), de la clase CSinFunction, para
graficar la función seno(x) dentro del dominio [-3PI, 3PI], con un tamaño de paso
h=15 grados, se requiere tener un arreglo de puntos de tipo Point cuyo tamaño es 73.
Verdadero, Verdadero Verdadero, Falso Falso, Verdadero Falso, Falso
. Verdadero o falso: a) En la función EvaluateFunction(), de la clase CRoseFourPetals,
para graficar la función polar dentro del dominio [0, 2PI], con un tamaño de paso h=1
grado, se requiere tener un arreglo de puntos de tipo Point cuyo tamaño es 361; b) En
la función EvaluateFunction(), de la clase CParametricFunction, para graficar una
función paramétrica dentro del dominio [0, 2PI], con un tamaño de paso h=1 grado,
se requiere tener un arreglo de puntos de tipo Point cuyo tamaño es 361. Verdadero, Verdadero Verdadero, Falso Falso, Verdadero Falso, Falso. Verdadero o falso: a) En la función EvaluateFunction(), de la clase CRationalFunction,
para graficar la función racional y =(x*x-1)/(x*x-4) se requieren definir 3 dominios
manejados cada uno con un bucle por la presencia de tres asíntotas; b) En la función
PlotAsimptotes(), de la clase CRationalFunction, se tiene que las asíntotas x=2 como
x=-2 son paralelas al eje vertical, mientras que la asíntota y=1 es paralela al eje
horizontal.
Verdadero, Verdadero Verdadero, Falso
Falso, Verdadero Falso, Falso. Verdadero o falso: a) En la función EvaluateFunction(), de la clase CRationalFunction,
para graficar la función racional y =(x*x-1)/(x*x-4) dentro del dominio [-10, 2), con un
tamaño de paso h=0.1, se requiere tener un arreglo de puntos de tipo Point cuyo
tamaño es 79; b) En la función EvaluateFunction(), de la clase CRationalFunction,
para graficar la función racional dentro del dominio (-2, 2), con un tamaño de paso
h=0.1, se requiere tener un arreglo de puntos de tipo Point cuyo tamaño es 38.
Verdadero, Verdadero Verdadero, Falso Falso, Verdadero Falso, Falso. En la función VectorToPointF(), de la clase Vector2D se convierte coordenadas del
mundo real al mundo de la Computación Gráfica utilizando las siguientes fórmulas,
considerando un área de trabajo de 400x300: xp = x*SF-400; yp = (-1)*(-y)*SF + 300; xp = x*SF+200; yp = (-1)*y*SF + 150;
xp = x*SF-200; yp = (-1)*(-y)*SF + 150; xp = x*SF+400; yp = (-1)*y*SF + 300;. Para graficar un triángulo cualquiera los valores de los vértices son:
A(0,0); B(a, 0); C(b*cos(A), b*sen(A)) A(0,0); B(b, 0); C(b*cos(A), b*sen(A)) A(0,0); B(c, 0); C(b*sen(A), b*cos(A)) A(0,0); B(c, 0); C(b*cos(A), b*sen(A))
. Verdadero o falso: a) La recta de Euler de un triángulo es una recta en la que están
situados el ortocentro, el circuncentro y el baricentro de un triángulo; incluye al punto
de Exeter y al centro de la circunferencia de los nueve puntos notables de un
triángulo escaleno; b) la recta de Euler pasa por el centro de intersección de las
alturas que es el ortocentro, pasa por el centro de intersección de las medianas que
es el circuncentro y el centro de intersección de las mediatrices que es el baricentro. Verdadero, Verdadero Verdadero, Falso Falso, Verdadero
Falso, Falso. El valor del vértice del baricentro de un triángulo cualquiera está dado por la fórmula:
G((x1+x2+x3)/2, (y1+y2+y3)/2) G((x1+x2+x3)/3, (y1+y2+y3)/3) G((x1+x2+x3)/4, (y1+y2+y3)/4) Ninguna de las anteriores. El valor del vértice del circuncentro de un triángulo cualquiera, donde uno de sus
lados está sobre el eje horizontal, está dado por la fórmula P(c/2, (b*b*sen(A)*cos(A)+b*b*cos(A)*sen(A)-2*b*sen(A)*(c/2))/(2*b*cos(A))) P(c/2, (b*b*sen(A)*cos(A)+b*b*cos(A)*sen(A)-2*b*cos(A)*(c/2))/(2*b*cos(A))) P(c/2, (b*b*sen(A)*sen(A)+b*b*cos(A)*cos(A)-2*b*cos(A)*(c/2))/(2*b*sen(A))) Ninguna de las anteriores. El valor del vértice del ortocentro de un triángulo cualquiera, donde uno de sus lados
está sobre el eje horizontal, está dado por la fórmula: H(b*cos(A), c*ctg(A)-b*cos(A)*tan(A)) H(b*cos(A), c*ctg(A)-b*cos(A)*ctg(A)) H(b*cos(A), c*tan(A)-b*cos(A)*ctg(A)) Ninguna de las anteriores. El valor del vértice del incentro de un triángulo cualquiera está dado por la fórmula:
((a*xA+b*xB+c*xC)/(3*a+3*b+3*c), (a*yA+b*yB+c*yC)/(3*a+3*b+3*c))
I((a*xA+b*xB+c*xC)/(2*a+2*b+2*c), (a*yA+b*yB+c*yC)/(2*a+2*b+2*c)) I((a*xA+b*xB+c*xC)/(a+b+c), (a*yA+b*yB+c*yC)/(a+b+c))
Ninguna de las anteriores. Los valores de los tres vértices de los círculos exinscritos a un triángulo cualquiera
formados por las bisectrices, donde uno de sus lados está sobre el eje horizontal,
están dados por las fórmulas: D(c-(Ra/tan(betha)), Ra); E(Rb/tan(alpha), Rb); F(Rc/tan(alpha), Rc) D(c-(Ra/tan(betha)), Ra); E(-Rb/tan(alpha), Rb); F(Rc/tan(alpha), -Rc)
D(c+(Ra/tan(betha)), Ra); E(-Rb/tan(alpha), Rb); F(Rc/tan(alpha), -Rc)
Ninguna de las anteriores.
. El valor del radio Ra de uno de los círculos exinscritos a un triángulo cualquiera
formado por las bisectrices, donde uno de sus lados está sobre el eje horizontal,
están dados por las fórmulas:
Ra=raíz_cuad((s*(s-b)*(s-c))/(s-a)) Ra=raíz_cuad((s*(s-a)*(s-c))/(s-b)) Ra=raíz_cuad((s*(s-b)*(s-a))/(s-c)) Ninguna de las anteriores. El valor del radio Rb de uno de los círculos exinscritos a un triángulo cualquiera
formado por las bisectrices, donde uno de sus lados está sobre el eje horizontal,
están dados por las fórmulas: Rb=raíz_cuad((s*(s-b)*(s-c))/(s-a)) Rb=raíz_cuad((s*(s-a)*(s-c))/(s-b)) Rb=raíz_cuad((s*(s-b)*(s-a))/(s-c)) Ninguna de las anteriores. El valor del radio Rc de uno de los círculos exinscritos a un triángulo cualquiera
formado por las bisectrices, donde uno de sus lados está sobre el eje horizontal,
están dados por las fórmulas:
Rc=raíz_cuad((s*(s-b)*(s-c))/(s-a)) Rc=raíz_cuad((s*(s-a)*(s-c))/(s-b)) Rc=raíz_cuad((s*(s-b)*(s-a))/(s-c)) Ninguna de las anteriores. Verdadero o falso: a) Dado un triángulo cualquiera (excluyendo un triángulo
rectángulo), el triángulo órtico o triángulo pedal respecto del dado, es el que tiene
por vértices los pies de las tres alturas de este, es decir, las proyecciones de los
vértices sobre los lados; b) El ortocentro de un triángulo es el incentro de su
triángulo órtico y las alturas de un triángulo son las bisectrices de los ángulos del
triángulo pedal. Verdadero, Verdadero Verdadero, Falso Falso, Verdadero
Falso, Falso
. El valor del vértice de la mediana opuesta al vértice A de un triángulo cualquiera,
donde uno de sus lados está sobre el eje horizontal, está dado por la fórmula: M(c + b * cos(A), b * sin(A)) M((c + b * cos(A)) / 2.0, b * sin(A) / 2.0)
M((c + b * cos(A)) / 3.0, b * sin(A) / 3.0) Ninguna de las anteriores.
. El valor del vértice de la mediana opuesta al vértice B de un triángulo cualquiera,
donde uno de sus lados está sobre el eje horizontal, está dado por la fórmula:
M((b * cos(A)) / 3.0), (b * sin(A)) / 3.0) M(b * cos(A), b * sin(A)) M((b * cos(A)) / 2.0), (b * sin(A)) / 2.0) Ninguna de las anteriores.
. El valor del vértice de la mediana opuesta al vértice C de un triángulo cualquiera,
donde uno de sus lados está sobre el eje horizontal, está dado por la fórmula: M(c / 2.0, 0.0) M(c / 2.0 + b / 2.0, 0.0) M(b / 2.0, 0.0) Ninguna de las anteriores. En la función VectorToPointF(), de la clase Vector2D se convierte coordenadas del
mundo real al mundo de la Computación Gráfica utilizando las siguientes fórmulas,
considerando un área de trabajo de 800x600: xp = x*SF-400; yp = (-1)*(-y)*SF + 300 xp = x*SF+400; yp = (-1)*y*SF + 300 xp = x*SF-200; yp = (-1)*(-y)*SF + 150 xp = x*SF+200; yp = (-1)*y*SF + 150. En la función VectorToPointF(), de la clase Vector2D se convierte coordenadas del
mundo real al mundo de la Computación Gráfica utilizando las siguientes fórmulas,
considerando un área de trabajo de (xCenter*2)x(yCenter*2) y utilizando
coordenadas relativas: xp = x*SF+xCenter; yp = (-1)*y*SF+yCente xp = x*SF+2*xCenter; yp = (-1)*(y)*SF+2*yCenter xp = x*SF+xCenter/2; yp = (-1)*(y)*SF+yCenter/2 Ninguna de las anteriores. En la función PlotAxis(), de la clase Vector3D, para graficar los ejes coordenados 'x' y
'z', se deben calcular los valores de los segmentos 'a' y 'b' cuyas fórmulas son:
a = b / tan(30); b = 8.0 a = 8.0; b = b / tan(30) a = b / tan(60); b = 4.0
Ninguna de las anteriores. En la función PlotPlane(), de la clase Vector3D, para graficar el plano ABCD, se deben
calcular los valores de los segmentos 'a' y 'b' cuyas fórmulas son: a = b / tan(60); b = 8.0 a = 4.0; b = b / tan(30)
a = b / tan(30); b = 4.0 Ninguna de las anteriores.
. En la función PlotPlane(), de la clase Vector3D, para graficar el plano ABCD, los
cuatro vértices en coordenadas relativas tienen los siguientes valores, en función de
los segmentos 'a' y 'b': P1(-200, ((-1) * b * SF) + 150; P2(a * SF + 200, 150); P3(200, ((-1) * -b * SF) +
150); P4(a * SF + 200; 150) P1(200, ((-1) * b * SF) + 150; P2(a * SF + 200, 150); P3(200, ((-1) * -b * SF) +
150); P4(-a * SF + 200; 150) P1(-xCenter, ((-1) * b * SF) + yCenter; P2(a * SF + xCenter, yCenter); P3(xCenter,
((-1) * -b * SF) + yCenter); P4(a * SF + xCenter; yCenter P1(xCenter, ((-1) * b * SF) + yCenter; P2(a * SF + xCenter, yCenter); P3(xCenter,
((-1) * -b * SF) + yCenter); P4(-a * SF + xCenter; yCenter). En la función PlotPlane(), de la clase Vector3D, para graficar los rombos pequeños,
se deben calcular los valores de los segmentos 'p' y 'q' cuyas fórmulas son: p = q / tan(60); q = 0.25 p = 0.25; q = p / tan(60) p = q / tan(30); q = 0.25
p = 0.25; q = p / tan(30). Verdadero o falso: a) En la función PlotPlane(), de la clase Vector3D, para graficar las
líneas auxiliares paralelas al eje 'z' del plano ABCD se deben unir los puntos del
triángulo rectángulo superior derecho con los puntos opuestos del triángulo
rectángulo inferior izquierdo que forman parte del plano; b) En la función PlotPlane(),
de la clase Vector3D, para graficar las líneas auxiliares paralelas al eje 'x' del plano
ABCD se deben unir los puntos del triángulo rectángulo superior izquierdo con los
puntos del triángulo rectángulo inferior derecho que forman parte del plano. Verdadero, Verdadero Verdadero, Falso Falso, Verdadero Falso, Falso. En la función PlotBox(), de la clase Vector3D, para graficar la caja, se deben calcular
algunos vértices como el valor del vértice A y del vértice B cuyas coordenadas son:
A(a*cos(60), b+a*sin(60)); B(a*cos(60), a*sin(60)) A(a*cos(60), b-a*sin(60)); B(a*cos(60), -a*sin(60)) A(a*cos(30), b+a*sin(30)); B(a*cos(30), a*sin(30)) A(a*cos(30), b-a*sin(30)); B(a*cos(30), -a*sin(30))
. Verdadero o falso: a) En la función PlotBox(), de la clase Vector3D, para graficar la
caja, se deben calcular seis vértices y los valores de los segmentos: BM, OM, DP, AP,
PM, NM, ON; b) En la función PlotBox(), de la clase Vector3D, para graficar el vector
se debe calcular el valor de los vértices O y D, y luego dibujar una línea entre esos
dos puntos. Verdadero, Verdadero Verdadero, Falso
Falso, Verdadero
Falso, Falso. En la función PlotBox(), de la clase Vector3D, para graficar la caja, se deben calcular
algunos vértices como el valor del vértice C y del vértice D cuyas coordenadas son: C(ON, PM+b); D(ON, PM) C(ON, PM-b); D(ON, -PM) C(ON, PM+b); D(ON, -PM) C(ON, PM-b); D(ON, PM). Verdadero o falso: a) En la función PlotParallelogram(), de la clase Vector3D, para
graficar el vector paralelo al vector A se requiere dibujar una línea operando con los
vectores A y C, mientras que para graficar el vector paralelo al vector B se requiere
dibujar una línea operando con los vectores B y C; b) En la función
PlotParallelogram(), de la clase Vector3D, para graficar el paralelogramo resultante
de la suma y de la resta se requiere que esta función opere con los tres vectores A, B
y C. Verdadero, Verdadero Verdadero, Falso Falso, Verdadero Falso, Falso
. Verdadero o falso: a) Para calcular el vector proyección V de A/B se requiere calcular
el producto punto entre el vector A y el vector unitario de B cuyo resultado al ser un
escalar se deberá multiplicar por el vector unitario de B; b) Para calcular el vector
perpendicular P se requiere realizar una resta entre los vectores A y el vector
proyección V de A/B.
Verdadero, Verdadero Verdadero, Falso Falso, Verdadero Falso, Falso
. Verdadero o falso: a) En la función EvaluateFunction(), de la clase
CCuadraticFunction, para graficar una parábola dentro del dominio [-20, 20], con un
tamaño de paso h=1, se requiere tener un arreglo de puntos de tipo Point cuyo
tamaño es 21; b) En la función EvaluateFunction(), de la clase CSinFunction, para
graficar la función seno(x) dentro del dominio [-3PI, 3PI], con un tamaño de paso
h=15 grados, se requiere tener un arreglo de puntos de tipo Point cuyo tamaño es 73.
Verdadero, Verdadero
Verdadero, Falso Falso, Verdadero
Falso, Falso. Verdadero o falso: a) En la función EvaluateFunction(), de la clase CRoseFourPetals,
para graficar la función polar dentro del dominio [0, 2PI], con un tamaño de paso h=1
grado, se requiere tener un arreglo de puntos de tipo Point cuyo tamaño es 361; b) En
la función EvaluateFunction(), de la clase CParametricFunction, para graficar una
función paramétrica dentro del dominio [0, 2PI], con un tamaño de paso h=1 grado,
se requiere tener un arreglo de puntos de tipo Point cuyo tamaño es 361. Verdadero, Verdadero Verdadero, Falso Falso, Verdadero
Falso, Falso
. Verdadero o falso: a) En la función EvaluateFunction(), de la clase CRationalFunction,
para graficar la función racional y =(x*x-1)/(x*x-4) se requieren definir 3 dominios
manejados cada uno con un bucle por la presencia de tres asíntotas; b) En la función
PlotAsimptotes(), de la clase CRationalFunction, se tiene que las asíntotas x=2 como
x=-2 son paralelas al eje vertical, mientras que la asíntota y=1 es paralela al eje
horizontal. Verdadero, Verdadero Verdadero, Falso Falso, Verdadero Falso, Falso. Verdadero o falso: a) En la función EvaluateFunction(), de la clase CRationalFunction,
para graficar la función racional y =(x*x-1)/(x*x-4) dentro del dominio [-10, 2), con un
tamaño de paso h=0.1, se requiere tener un arreglo de puntos de tipo Point cuyo
tamaño es 79; b) En la función EvaluateFunction(), de la clase CRationalFunction,
para graficar la función racional dentro del dominio (-2, 2), con un tamaño de paso
h=0.1, se requiere tener un arreglo de puntos de tipo Point cuyo tamaño es 38.
Verdadero, Verdadero Verdadero, Falso Falso, Verdadero Falso, Falso. Verdadero o falso: a) OpenGL es una API para renderizado de gráficos vectoriales en
2D y 3D; b) La API de OpenGL se la utiliza típicamente para interactuar con la Unidad
de Procesamiento de Gráficos (GPU), que le permite alcanzar un renderizado
acelerado de gráficos. Verdadero, Verdadero Verdadero, Falso Falso, Verdadero Falso, Falso. Verdadero o falso: a) La gente que construye GPUs, son los responsables de escribir
implementaciones del sistema de renderizado de OpenGL; b) Estas
implementaciones se llaman comúnmente "APPs", que traducen comandos de la API
de OpenGL en comandos de la GPU. Verdadero, Verdadero
Verdadero, Falso
Falso, Verdadero Falso, Falso
. Verdadero o falso: a) La versión de OpenGL 1.0 de fue lanzada en 1991; b) En 1991,
comenzó el desarrollo por SGI (Silicon Graphics INC.) y un grupo de desarrolladores
denominados como ARB que contaban con la participación de empresas como IBM,
Microsoft, Nvidia, entre otras. Verdadero, Verdadero Verdadero, Falso Falso, Verdadero
Falso, Falso. Verdadero o falso: a) La versión de OpenGL 2.1 fue lanzada el 2 de Junio de 2006; b)
En Junio del 2006, cambia el mantenimiento de OpenGL desde SGI hacia el grupo
Khronos conformado por empresas como SGI, ATI, Nvidea, entre otras. Verdadero, Verdadero Verdadero, Falso Falso, Verdadero
Falso, Falso. Entre los usos principales de OpenGL están: Desarrollo de Videojuegos y Diseño Asistido por Computador (CAD). Aplicaciones Móbiles, Animaciones y Videos. Realidad Virtual.
Todas las anteriores. Verdadero o falso: a) La librería gl (OpenGL Core Library) incluye operaciones de
transformación, rotación y cálculos matemáticos sobre la GPU; b) La librería glu
(OpenGL Utility Library) incluye operaciones de renderizado, dibujo de vértices, entre
otras Verdadero, Verdadero Verdadero, Falso Falso, Verdadero Falso, Falso. Verdadero o falso: a) La librería glut (OpenGL Utility Toolkit Library) incluye
operaciones sobre la interface del sistema de ventanas multiplataforma; b) Las
librerías wgl, cgl, glx, permiten manejar de manera avanzada las interfaces del
sistema de ventanas solo para el Sistema Operativo Windows. Verdadero, Verdadero Verdadero, Falso Falso, Verdadero
Falso, Falso. Entre las principales implementaciones de OpenGL están:
Nvidea OpenGL, llamada nvidea driver.
AMD OpenGL, llamada amd driver.
Para mas gráficos de alta definición de Intel Todas las anteriores. Verdadero o falso: a) El renderizado es un proceso mediante el cual se traslada la
geometría 3D a 2D con imágenes de rasterizado; b) Los GPUs son procesadores
como los CPUs, pero de alto procesamiento para manejo de gráficos y renderizado. Verdadero, Verdadero
Verdadero, Falso Falso, Verdadero
Falso, Falso. Verdadero o falso: a) La GPU no solo se utiliza para el proceso de renderizado, sino
también para procesamiento de gráficos de propósito general y operaciones de
cálculo computacional en aplicaciones manejadas tradicionalmente por la CPU; b)
Las CPUs están divididas por marcas como Intel, AMD, etc., y por arquitecturas
como CISC, RISC, ZISC, MISC, etc. Verdadero, Verdadero Verdadero, Falso Falso, Verdadero Falso, Falso. Verdadero o falso: a) Las GPUs están divididas por marcas como Nvidea, ATI, Intel,
AMD, etc. Y por arquitecturas como Kepler, Maxwell, Pascal, Volta, etc.; b) Se pueden
escribir aplicaciones para GPUs utilizando compiladores de lenguaje de alto nivel
como C/C++. Verdadero, Verdadero
Verdadero, Falso
Falso, Verdadero
verdadero . Verdadero o falso: a) OpenGL es una API de bajo nivel para la interacción simple con
la GPU y para crear aplicaciones gráficas con renderizado; b) El sistema de
canalización de renderizado de openGL maneja seis niveles.
Verdadero, Verdadero
Verdadero, Falso Falso, Verdadero
Falso, Falso
. Verdadero o falso: a) El primer nivel de OpenGL se encarga de trasladar, rotar, escalar
vértices basados sobre transformaciones y matrices de perspectiva; b) El segundo
nivel de OpenGL maneja arreglos de vértices de modelos 2D, 3D y texturas con
colores y coordenadas Verdadero, Verdadero
Verdadero, Falso Falso, Verdadero
Falso, Falso. Verdadero o falso: a) El tercer nivel de OpenGL se encarga de ensamblar vértices
dentro de triángulos basados en tipos de primitivas; b) El cuarto nivel de OpenGL se
encarga de rasterizar triángulos dentro de formatos de píxeles basados en marices
de vista de puertos Verdadero, Verdadero Verdadero, Falso Falso, Verdadero Falso, Falso
falso . Verdadero o falso: a) El quinto nivel de OpenGL se encarga de testear píxeles y
operaciones de mezcla, así como la escritura de píxeles dentro del framebuffer para
mostrarlos en la pantalla; b) El sexto nivel de OpenGL se encarga de dar color y
textura a los píxeles llamados sombreador de fragmentos o sombreado de píxeles. Verdadero, Verdadero Verdadero, Falso Falso, Verdadero Falso, Falso. Entre las clases de conjuntos de primitivas del sistema de canalización de
renderizado de openGL están: Points, Lines, LineStrip, LineLoop Polygon, Triangles, TriangleStrip, TriangleFan. Quads, QuadStrip.
Todas las anteriores. Verdadero o falso: a) El sistema de rasterización de OpenGL maneja la vista en
perspectiva y la proyección ortográfica; b) La Prueba de Profundidad de OpenGl es
un proceso que se ejecuta después del Sombreado de Fragmento para detectar
marcos o frames incorrectos y descartarlos. Verdadero, Verdadero
Verdadero, Falso Falso, Verdadero
Falso, Falso
. ¿Qué tipo de objeto se debe utilizar para renderizar varios triángulos (100, 1.000,
1.000.000)?
Polygon. Triangles Textures. Quads. ¿Cuáles son las principales APIs gráficas desarrolladas en el mercado de las GPUs? DirectX y Vulkan.
DirectX, OpenGL y Vulkan. DirectX y OpenGL. OpenGL y Vulkan.
. ¿Cuáles son los principales lenguajes de alto nivel para trabajar con APIs gráficas? C/C++. Java. C#. Todas las anteriores. ¿Cuál es el proceso de comunicación clásico entre las aplicaciones y el Sistema
Operativo con los circuitos integrados S.O. y aplicaciones, Kernel, Firmware, Hardware S.O. y aplicaciones, Ensamblador, Firmware, Hardware.
S.O. y aplicaciones, Kernel, Ensamblador, Firmware, Hardware S.O. y aplicaciones, Kernel, Ensamblador, Hardware.
. ¿En qué sistemas operativos se ejecuta la API gráfica de OpenGL? Windows y LINUX. MAC. Android.
Todas las anteriores. ¿En qué sistemas operativos se ejecuta la API gráfica de DirectX? Windows y LINUX.
Windows.
Windows y MAC. Android. ¿En qué sistemas operativos se ejecuta la API gráfica de Vulkan? Windows, LINUX y MAC Windows, Nintendo, LINUX y Android.
Windows, Nintendo, STADIA, MolkenVK, MAC, LINUX y Android. Windows, Nintendo, LINUX, MAC y Android. ¿En dónde se ejecutan las APIs gráficas para renderizar rápidamente los gráficos por
computadora? En la GPU. En la GPU y en la CPU. En la CPU. En la memoria RAM y Caché. ¿En qué año apareció DirectX? 1993. 1994 1995. 1996.
. ¿En qué año se lanza Vulkan al mercado? 2015 2016 2017 2018. Verdadero o falso: a) Vulkan es una API multiplataforma para el desarrollo de
aplicaciones con gráficos 2D y 3D, creada por Khronos Group como una iniciativa de
OpenGL de próxima generación; b) Vulkan está basad en Mantle, que es un API de la
empresa AMD, cuyo código fue cedido a Khronos con la intención de generar un
estándar abierto similar a OpenGL, pero de bajo nivel.
Verdadero, Verdadero Verdadero, Falso Falso, Verdadero Falso, Falso. Verdadero o falso: a) La principal característica de Vulkan es que puede aprovechar
la cantidad de núcleos presentes en el procesador principal de las PC,
incrementando drásticamente el rendimiento gráfico; b) Vulkan a diferencia de OpenGL utiliza una sola máquina de estado global y todos los conceptos de estado
están localizados en un buffer de comando
Verdadero, Verdadero Verdadero, Falso Falso, Verdadero
Falso, Falso. ¿Cuál de las siguientes instrucciones dibuja la rama del lado derecho de un árbol
fractal?
DrawBranch(picCanvas, depth - 1, x1, y1, length * LENGTH_SCALE, theta +
DTHETA); DrawBranch(picCanvas, depth - 1, x1, y1, length * LENGTH_SCALE, theta -
DTHETA);
DrawBranch(picCanvas, depth - 1, x1, y1, length * LENGTH_SCALE, theta *
DTHETA);
DrawBranch(picCanvas, depth - 1, x1, y1, length * LENGTH_SCALE, theta /
DTHETA);
. ¿Cuál de las siguientes instrucciones dibuja la rama del lado izquierdo de un árbol
fractal? DrawBranch(picCanvas, depth - 1, x1, y1, length * LENGTH_SCALE, theta +
DTHETA); DrawBranch(picCanvas, depth - 1, x1, y1, length * LENGTH_SCALE, theta -
DTHETA) DrawBranch(picCanvas, depth - 1, x1, y1, length * LENGTH_SCALE, theta *
DTHETA); DrawBranch(picCanvas, depth - 1, x1, y1, length * LENGTH_SCALE, theta /
DTHETA). Cuál de las siguientes instrucciones corresponden a las fórmulas de
transformación de coordenadas rectangulares para un árbol fractal? x1 = X + length * (float)Math.Cos(theta); y1 = Y + length * (float)Math.Sin(theta); ok. Cuál de las siguientes instrucciones corresponden a las fórmulas de incremento en
'x' e 'y' en la curva fractal de Koch xInc = len + Math.Cos(dirRad); yInc = len + Math.Sin(dirRad); xInc = len - Math.Cos(dirRad); yInc = len - Math.Sin(dirRad);
xInc = len * Math.Cos(dirRad); yInc = len * Math.Sin(dirRad); xInc = len / Math.Cos(dirRad); yInc = len / Math.Sin(dirRad);. Cuál de las siguientes instrucciones corresponden al cálculo de la longitud y del
ángulo theta para dibujar un copo de nieve de manera recursiva?
length = (float)Math.Sqrt(dx * dx + dy * dy); theta = (float)Math.Atan2(dy, dx);
ok. Verdadero o falso: a) La clase Game en OpenGL contiene métodos para: 1)
Constructor/es de la clase Game; 2) Arrancar una aplicación gráfica; 3)
Redimensionar una ventana; 4) Renderizar los frames de la aplicación gráfica; 5)
Inicializar la carga de la aplicación gráfica; b) La clase GameWindow contiene
métodos multiplataforma para crear y renderizar en una ventana Windows, además
de manejar la entrada y cargar recursos. Verdadero, Falso Falso, Verdadero Falso, Falso. ¿Cuál es el orden correcto de las instrucciones en la función Start de la la clase
Game en OpenGL? window.Resize += Resize; window.RenderFrame += RenderF; window.Load +=
Loaded; window.Run(1.0 / 60.0); window.Load += Loaded; window.RenderFrame += RenderF; window.Resize +=
Resize; window.Run(1.0 / 60.0) window.Load += Loaded; window.Resize += Resize; window.RenderFrame +=
RenderF; window.Run(1.0 / 60.0);. Verdadero o falso: a) En una proyección Ortogonal, el plano x-y está a 90 grados, el
plano x-z está a 135 grados, el plano y-z está a 135 grados; b) En una proyección
Ortogonal, el eje 'x' se lo manipula con los métodos left y right, el eje 'y' se lo
manipula con los métodos bottom y top, el eje 'z' se lo manipula con los métodos
zNear y zFar.
Verdadero, Verdadero Verdadero, Falso Falso, Verdadero. ¿Cuáles son los vértices de la cara frontal de un cubo en OpenGl? A(-10,-10,10); B(10,-10,10); C(10,10,10); D(-10,10,10). A(-10,-10,-10); B(10,-10,-10); C(10,10,-10); D(-10,10,-10).
|