Snuc
Quiz von , erstellt am more than 1 year ago

Test con la recopilación de preguntas de las unidades 9 y 10 de Fundamentos de la Programación

89
1
0
Snuc
Erstellt von Snuc vor mehr als 9 Jahre
Schließen

FdP. Unidades 9 y 10

Frage 1 von 38

1

¿Qué ocurre en la ejecución del siguiente código en C++?
int *num = new int;
*num=5;

Wähle eine der folgenden:

  • Se declara un puntero y se le asigna un valor

  • Se declara un puntero y se le asigna la dirección de memoria "5"

  • Ninguna de las otras respuestas

  • Se declara un puntero asignándole una posición de memoria. Después, se asigna un contenido a dicha posición de memoria

Erklärung

Frage 2 von 38

1

¿Se puede generar un número aleatorio en C++?

Wähle eine der folgenden:

  • Sí, con una librería de C++

  • Ninguna de las otras respuestas

  • No

  • Depende del ingenio del programador, dado que se debe programar manualmente

Erklärung

Frage 3 von 38

1

¿Se puede deshacer la definición de un nombre simbólico de una constante?

Wähle eine der folgenden:

  • Depende de la implementación del preprocesador de C++

  • No

  • Si

  • Depende de la implementación del compilador de C++

Erklärung

Frage 4 von 38

1

¿Cuál es el tipo de datos más adecuado para representar las características de un coche en C++? Algunas de las características de un coche pueden ser: marca, longitud, anchura y color.

Wähle eine der folgenden:

  • Una estructura (también llamada registro)

  • Un array con un tamaño igual al número de características

  • Ninguna de las otras opciones es adecuada

  • Varias variables de tipos básicos (i.e. float, string, etc)

Erklärung

Frage 5 von 38

1

¿Cuáles son las diferencias entre "#if" e "if" en C++?
A) La primera es una directiva al preprocesador, mientras que la segunda es una palabra reservada para la estructuras condicionales.
B) Sólo la primera se trata en la fase de preprocesado
C) Sólo "if" puede usar variables en la expresión que evalúa
D) Sólo "#if" puede usar nombres simbólicos de constantes en la definición

Wähle eine der folgenden:

  • Sólo A, B y C

  • Ninguna de las otras propuestas

  • Sólo A y B

  • A, B, C y D

Erklärung

Frage 6 von 38

1

¿Cuánto es el valor de "soluciones[2]" después de ejecutarse el siguiente código en C++?
char soluciones[5]={'a','b','a',b','c'};

Wähle eine der folgenden:

  • Depende del compilador de C++ en lo referente al tratamiento de vectores

  • 'a'

  • Error porque la declaración es incorrecta

  • 'b'

Erklärung

Frage 7 von 38

1

¿Cuáles de los siguientes códigos los tratará el preprocesador de C++?

CÓDIGO A
#define ACELARACION_GRAVEDAD 9.8

CÓDIGO B
float ACELARACIÓN_GRAVEDAD=9.8;

Wähle eine der folgenden:

  • Sólo B

  • Sólo A

  • Ninguno de los dos

  • A y B

Erklärung

Frage 8 von 38

1

¿Cuál es el resultado de aplicar el preprocesador de C++ a la siguiente instrucción con el siguiente macro?

MACRO
#define cubo(x) = x*x*x

INSTRUCCIÓN
z = cubo(2+1);

Wähle eine der folgenden:

  • z=(2+1)*(2+1)*(2+1);

  • z=2+1*2+1*2+1;

  • z=27;

  • z=7;

Erklärung

Frage 9 von 38

1

¿Cómo se puede acceder al peso de un gato según la siguiente definición de tipo y la siguiente variable en C++?

DEFINICIÓN DEL TIPO
typedef struct{
______char nombre [64];
______float peso;
} Gato
DECLARACIÓN DE LA VARIABLE
Gato *gatoTonet = new Gato;

Wähle eine der folgenden:

  • Ninguna de las otras respuestas

  • gatoTonet.peso

  • (&gatoTonet).peso

  • gatoTonet->peso

Erklärung

Frage 10 von 38

1

¿Se puede evaluar si un letra es mayúscula en C++? ¿y si es un signo de puntuación?

Wähle eine der folgenden:

  • Sí, con una librería de C++

  • No

  • Ninguna de las otras respuestas

  • Depende del ingenio del programador, dado que ambas operaciones se deben programar manualmente.

Erklärung

Frage 11 von 38

1

¿Qué código es más adecuado y simple para sumar dos vectores de 20 elementos en C++?

A)
z[0]=x[0]+y[0];
z[1]=x[1]+y[1];
z[2]=x[2]+y[2];
...

B)
for (int i=0;i<20;i++){
______z[i]=x[i]+y[i];
}

C)
z=x+y;

Wähle eine der folgenden:

  • A

  • B

  • C

  • Ninguna de las otras respuestas

Erklärung

Frage 12 von 38

1

¿Qué ocurre en la ejecución del siguiente código en C++?
int *num;
*num=2;

Wähle eine der folgenden:

  • Ninguna de las otras respuestas

  • Se declara un puntero y se le asigna un valor

  • Se produce un error dado que no se ha asignado memoria al puntero

  • Se declara un puntero y se le asigna la dirección de memoria "2"

Erklärung

Frage 13 von 38

1

¿Cuál es el código resultante de aplicar el preprocesador de C++ al siguiente código?

CÓDIGO ANTERIOR AL PREPROCESADO
#define ACELARACION_GRAVEDAD 9.8
...
v = v + ACELERACION_GRAVEDAD * t;

CÓDIGO A
float ACELERACION_GRAVEDAD=9.8;
...
v = v + ACELERACION_GRAVEDAD * t;

CÓDIGO B
v = v + 9.8 * t;

CÓDIGO C;
#define ACELARACION_GRAVEDAD 9.8
...
v = v + ACELERACION_GRAVEDAD * t;

Wähle eine der folgenden:

  • Código B

  • Código A

  • Código C

  • Código A o B, dependiendo de la implementación del preprocesador de C++ que se use.

Erklärung

Frage 14 von 38

1

¿Qué ofrecen las librerías de C++?
A) Herramientas para que el programador pueda usar, e.g. tratamiento de la entrada/salida y cadenas de caracteres.
B) Optimización de la eficiencia del código, e.g. anticipación de valores por cálculos en paralelo y simplificación de expresiones antes de la compilación.

Wähle eine der folgenden:

  • Ninguna de las dos

  • Sólo A

  • A y B

  • Sólo B

Erklärung

Frage 15 von 38

1

¿Cuántos índices son necesarios para acceder a un elemento de una matriz en programación?

Wähle eine der folgenden:

  • Dos índices

  • Varios índices

  • Ninguna de las otras respuestas

  • Un único índice

Erklärung

Frage 16 von 38

1

¿Se puede concatenar dos cadenas de caracteres en C++?

Wähle eine der folgenden:

  • No se puede hacer de manera directa. El programador deberá programar obligatoriamente una función para dicha operación.

  • Sí, con la palabra reservada correspondiente.

  • Ninguna de las otras respuestas

  • Sí, con la función "strcat" de la librería estándar "cstring"

Erklärung

Frage 17 von 38

1

¿Qué es un vector en programación?

Wähle eine der folgenden:

  • Una secuencia de valores, en la que se obtienen directamente los índices a partir de dichos valores

  • Ninguna de las otras respuestas

  • Una secuencia de valores del mismo tipo en la que se puede acceder directamente a sus valores indicando las posiciones

  • Una estrutura de datos que describe una dirección geométrica, que está determinada por dos valores

Erklärung

Frage 18 von 38

1

¿Es correcto el siguiente código en C++?
char longitud_corbatas [5]={5,3,4,4,7};
longitud_corbatas[2]=7;

Wähle eine der folgenden:

  • No, porque los índices sólo sirven para acceder a los elementos y no para cambiar dichos elementos

  • Sí, dado que se puede modificar el valor de un vector

  • No, porque no se puede modificar el valor de un vector una vez se ha asignado inicialmente

  • Depende de diversos factores

Erklärung

Frage 19 von 38

1

¿Cómo se puede determinar si el siguiente puntero tiene un contenido de valor 7 en C++?
int *longitud;

Wähle eine der folgenden:

  • if(*longitud==7){...}

  • if(longitud==&7){...}

  • if(&longitud==7){...}

  • if(longitud==7){...}

Erklärung

Frage 20 von 38

1

¿Cuál es el resultado de aplicar el preprocesador de C++ a la siguiente instrucción con el siguiente macro?

MACRO
#define cubo(x) = ((x)*(x)*(x))

INSTRUCCIÓN
z = cubo(2+1);

Wähle eine der folgenden:

  • z=3*3*3;

  • z=((2+1)*(2+1)*(2+1));

  • z=27;

  • z=(2+1)*(2+1)*(2+1);

Erklärung

Frage 21 von 38

1

¿Cómo se obtiene la dirección de memoria de la siguiente variable en C++?
char casilla;

Wähle eine der folgenden:

  • &casilla

  • casilla[0]

  • *casilla

  • &char

Erklärung

Frage 22 von 38

1

¿Qué expresiones son válidas para declarar una cadena de caracteres en C++?
A) char str[6]="brazo";
B) char *str="brazo";
C) char str="brazo";
D) char str []= {'b','r','a','z','o','\0'};
E) string str ("brazo");

Wähle eine der folgenden:

  • Sólo A, B, D y E

  • Ninguna de las otras respuestas

  • Sólo A y E

  • A, B, C, D y E

Erklärung

Frage 23 von 38

1

¿Cómo se puede acceder al peso de un gato según la siguiente definición de tipo y la siguiente variable en C++?

DEFINICIÓN DEL TIPO
typedef struct{
______char nombre [64];
______float peso;
} Gato
DECLARACIÓN DE LA VARIABLE
Gato gatoTonet;

Wähle eine der folgenden:

  • gatoTonet->peso

  • Ninguna de las otras respuestas

  • gatoTonet.peso

  • (*gatoTonet).peso

Erklärung

Frage 24 von 38

1

¿Cómo se obtiene el contenido del siguiente puntero en C++?
char *casilla;

Wähle eine der folgenden:

  • Ninguna de las otras respuestas

  • &casilla

  • casilla[1]

  • *casilla

Erklärung

Frage 25 von 38

1

Asume la siguiente representación de una casilla de un tablero de damas:
'b': Hay una ficha blanca
'n': Hay una ficha negra
'v': La casilla está vacía
Recuerda que un tablero de damas es cuadrado y la longitud de su lado es de 8 casillas.
¿Cómo representarías un tablero de damas con fichas en C++?

Wähle eine der folgenden:

  • char tablero [8][8];

  • char tablero [8];

  • char tablero [8][8][8][8][8][8][8][8];

  • int tablero [8];

Erklärung

Frage 26 von 38

1

¿Qué se debe realizar cuando se deja de utilizar un puntero para el cual se reservó memoria con "new" en C++?

Wähle eine der folgenden:

  • Salir del ámbito donde fue declarado el puntero

  • No volver a usar la expresión "*puntero"

  • Liberar la memoria con "delete", y recomendablemente establecer el puntero a NULL

  • Asignar el puntero a NULL

Erklärung

Frage 27 von 38

1

¿Qué es un puntero en programación?

Wähle eine der folgenden:

  • Una variable que contiene una dirección de memoria donde está almacenado un valor

  • Un variable que contiene cualquier tipo

  • Ninguna de las otras respuestas

  • Un vector o una matriz

Erklärung

Frage 28 von 38

1

¿Cuál es el tipo más adecuado para referirse a los cinco tipos de dedos que hay en las manos (i.e. pulgar, índice, corazón, anular y meñique)?

Wähle eine der folgenden:

  • Un entero

  • Un carácter

  • Un tipo enumerado

  • Ninguna de las otras respuestas es adecuada

Erklärung

Frage 29 von 38

1

¿Qué contiene la siguiente variable en C++? int *entrada;

Wähle eine der folgenden:

  • Un vector

  • Ninguna de las otras respuestas

  • Un entero

  • Una dirección de memoria

Erklärung

Frage 30 von 38

1

¿Cómo se obtiene la dirección de memoria de la siguiente variable en C++?
int diametro_rueda;

Wähle eine der folgenden:

  • *diametro_rueda

  • diametro_rueda

  • & int

  • &diametro_rueda

Erklärung

Frage 31 von 38

1

¿Cómo se puede evaluar si dos cadenas caracteres tienen el mismo contenido en C++?
char cadena1[256]=...;
char cadena2[256]=...;

Wähle eine der folgenden:

  • Ninguna de las otras opciones

  • if(*cadena1==*cadena2){

  • if(strcmp(cadena1,cadena2)==0){

  • if(cadena1==cadena2){

Erklärung

Frage 32 von 38

1

En la siguiente instrucción, ¿hay alguna diferencia entre aplicar la siguiente macro "cubo" y aplicar una función "cubo" que calcula el cubo de un valor?

MACRO
#define cubo(x) = ((x)*(x)*(x))

INSTRUCCIÓN
z = cubo(b++);

A) Con el macro se incrementa tres veces la variable "b", mientras que con la función sólo se incrementaría una vez.
B) Con el macro, el tiempo de ejecución es ligeramente menor.

Wähle eine der folgenden:

  • Sólo B

  • Sólo A

  • Ninguna de las dos

  • A y B

Erklärung

Frage 33 von 38

1

¿Qué permite la librería estándar de entrada/salida de C++?
A) Leer de teclado
B) Mostrar mensajes por pantalla
C) Dado un valor real de entrada, generar su raíz cuadrada de salida.
D) Concatenar dos cadenas de caracteres.
E) Escribir y leer de archivo

Wähle eine der folgenden:

  • A, B, C, D y E

  • Ninguna de las otras respuestas

  • A, B, C y E

  • A, B y E

Erklärung

Frage 34 von 38

1

¿Que es el preprocesamiento en programación?

Wähle eine der folgenden:

  • Ninguna de las otras opciones

  • Un compilado que permite nombrar las variables en código máquina

  • Un fase previa de la compilación, que permite por ejemplo definir nombres y macros, e incluir texto de otros ficheros

  • Un fase previa de compilado que permite optimizar las estructuras de repetición

Erklärung

Frage 35 von 38

1

¿Se puede calcular el coseno de un número en C++?

Wähle eine der folgenden:

  • No

  • Ninguna de las otras respuestas

  • Depende del ingenio del programador, dado que se debe programar manualmente

  • Sí, con una librería de C++

Erklärung

Frage 36 von 38

1

¿Cómo es recomendable incluir un módulo de cálculos geométricos definido por el propio programador?

Wähle eine der folgenden:

  • Con una directiva que incluya su fichero de cabecera, sin incluir ninguna extensión

  • Con una directiva que incluya su fichero de código, incluyendo su extensión, i.e. ".cpp"

  • Ninguna de las otras respuestas

  • Con una directiva que incluya su fichero de cabecera, incluyendo su extensión, i.e. ".h"

Erklärung

Frage 37 von 38

1

¿Cuáles de las siguientes funcionalidades tiene el preprocesador de C++?
A) Inicializar las variables con datos
B) Incluir los archivos de cabecera de otros módulos
C) Definir la compilación condicional
D) Optimizar la compilación de las estructura condiciona (i.e. "if").

Wähle eine der folgenden:

  • A, B y C

  • A, B, C y D

  • Ninguna de las otras respuestas

  • B y C

Erklärung

Frage 38 von 38

1

¿Cuáles de las siguientes funcionalidades tiene el preprocesador de C++?
A) Definir nombres simbólicos de constantes
B) Definir nombres de variables.
C) Definir macros
D) Definir funciones

Wähle eine der folgenden:

  • A y C

  • A, B, C y D

  • Ninguna de las otras respuestas

  • A, B y C

Erklärung