Analice las opciones propuestas y determine cuál de estas se cumple para la siguiente
condición.
if(!(n>9 || n<5))
Seleccione una:
Se cumple para valores de n menores a 5 y mayores a 9
No se cumple si los valores son n = {6, 7, 8}
No es cierto. Para los valores 6, 7 y 8 la expresión si se cumple
Únicamente es verdadera para los valores de n = {5, 6, 7, 8, 9} CREO QUE ESTA ES LA
CORRECTA
No se cumple sí los valores de n son {5, 9}
Analice la siguiente expresión con los posibles valores de verdadero o falso de las variables
lógicas X, Y, y seleccione la afirmación correcta.
(X && !Y) && (!X || Y)
Seleccione una:
a. Solo se cumple cuando X es falso
b. Solo se cumple cuando X es verdadero y Y es falso
c. Siempre se cumple
d. Nunca se cumple
La expresión es una contradicción, por consiguiente nunca se cumple. Esta es la respuesta
correcta!! :)
¿Qué imprime el siguiente fragmento de código?
int x=5, a=10, b=7;
if(a%b < b%a){
x = x + b * a;
}
else {
x = x - a * b;
}
printf("x = %d", x);
Seleccione una:
x = 120
x = 75 ESTA ES LA CORRECTA
x = -35
x = -65
No es correcto. Puesto que la multiplicación es primero que la suma
Al final de este fragmento de código en lenguaje C ¿cuál es el valor de la variable entera s?
note que el incremento de las variables después de hacer cada ciclo es diferente.
int s = 0, i, j;
for(i=5; i<20; i=i+2){
for(j=1; j<92; j=j*2){
s = s+1;
}
}
Seleccione una:
vale 7
No es correcto. Este es solo el incremento en el ciclo interno
vale 49
vale 56 ESTA ES LA CORRECTA
vale 64
Completar el siguiente fragmento en lenguaje C para que el resultado de imprimir la variable
entera acum sea 33.
int k = 3;
int acum = 0;
do{
acum = acum + k;
k = k+1;
} while(________);
printf("acum=%d", acum); // imprimir(acum)
Seleccione una:
(k < 8)
No es correcto. La variable k se incrementa una vez más antes de salir del ciclo.
(k < 9)
(k < 30)
(k < 33)
Al ejecutarse el siguiente segmento programa, ¿qué valores imprime?
int x=1,s=0;
while(x<=50) {
if((x % 5)== 0)
{
printf(" %d \n", x);
s=x+s;
}
x++;
}
printf(" %d \n", s );
Seleccione una:
Lista los 10 primeros números de 1 a 50 y su sumatoria
Lista los 50 primeros números múltiplos de cinco y su sumatoria
Lista los 10 primeros números múltiplos de cinco y su sumatoria ESTA ES LA CORRECTA
Lista los números de 1 a 50
No es correcto. El algoritmo no imprime 50 veces
Del siguiente fragmento de código indique el resultado final del arreglo B
int T=9;
int A[T]={2, 5, 9, 8, 1, 6, 3, 4, 7};
int B[T];
float P;
for(int i=T-1; i>=0; i--){
P = A[i] % 2;
if(P != 0){
B[T-1-i] = A[i];
}
else{
B[T-1-i] = 0;
}
}
Seleccione una:
7 0 4 0 3 0 6 0 1 TAMPOCO ES ESTA
2 0 5 0 9 0 8 0 1
No es correcto. El algoritmo comienza por el último elemento y avanza hasta el primero
209010307
703010950
¿Qué valor queda almacenado en la posición 0 del vector?
int vector[5];
int x=0, y=5, z=10;
for(x=0; x<y; x++){
vector[y-1-x] = x * z + x;
}
Seleccione una:
44 ESTA ES LA CORRECTA
0
No es correcto. Este es el primer valor calculado, pero no se asigna a la posición cero del
vector
55
41
Teniendo en cuenta el siguiente fragmento de código en C: ¿qué valores quedan en la
variable arreglo?
int matriz[3][4]= {{1, 2, 3, 4},
{5, 6, 7, 8},
{9,10,11,12}};
int arreglo[3];
int i,j;
for (i=0;i<3;i++){
arreglo[i]=0;
for (j=0;j<4;j++){
arreglo[i]=arreglo[i]+matriz[i][j];
}
}
Seleccione una:
15, 18, 21, 24
10, 15, 21, 42
10 , 26, 42
Esta es la respuesta correcta! :)
15, 26, 21
Qué imprime el siguiente fragmento de código?
int ren = 3, i, j;
int col = 3;
int arreglo[3][3] = {{10,2,9},
{7,3,14},
{2,8,24}};
int t = 0;
for(i=0; i<ren; i++){
for(j=0; j<col; j++){
if(i == j){
t = t + arreglo[i][j];
}
}
}
printf("%d", t);
Seleccione una:
14
21
No es correcto. Los valores acumulados no corresponden.
37 ESTA ES LA CORRECTA
24
Determine cuál es la expresión algorítmica equivalente a la siguiente ecuación:
Seleccione una:
x1 = -b + sqrt(b*b-4*a*c)/2*a;
x1 = (-b+sqrt(b*b-4*a*c))/(2*a);
Bien!! respuesta correcta :)
x1 = (-b + sqrt(b*b)-4*a*c) / (2*a);
x1 = (-b + sqrt(b^2-(4ac)))/2a;
Determine cuál es la expresión algorítmica equivalente a la siguiente ecuación:
Seleccione una:
A = (x+y)/(w/5)+x^2*y/2w;
A = (x+y)/w/5+(x*x*y)/2*w;
A = x+y/(w/5)+(x*x)*y/(2*w);
Problemas, se requiere uso de paréntesis en el numerador del primer término
A = (x+y)/(w/5)+x*x*y/(2*w); ESTA ES LE CORRECTA
¿Cuál es el valor final de total que imprime el siguiente fragmento de programa si se ingresa
un promedio=4.5?
float promedio=0, matricula=100, total=0, x=0;
printf("Ingrese el promedio: ");
scanf("%f", &promedio);
if(promedio>4.5){
x=0.2;
}
else{
if(promedio>4 && promedio<4.5){
x=0.1;
}
else{
if(promedio>3.5 && promedio<4){
x=0.05;
}
else{
x=0.15;
}
}
}
total = matricula - matricula*x;
printf("Valor de matricula a pagar: %f \n", total); //imprime total
Seleccione una:
80
95
90
85
Respuesta correcta :). Después de que ninguna de las condiciones se cumple
El siguiente fragmento en lenguaje C se debe completar con una instrucción que evite el ciclo
infinito. ¿Cuál de las instrucciones propuesta cumple con esta condición?
int x = 32;
int y = 4;
int a = -2;
while(x > 2){
y = y+x+a;
___________;
}
Seleccione una:
x = x+y
x = x+a
Esta es la respuesta correcta! :)
x = y-a
y = x-a
Al final de este fragmento de código en lenguaje C ¿cuál es el valor de la variable entera s?
note que el incremento de las variables después de hacer cada ciclo es diferente.
int s = 0, i, j;
for(i=5; i<20; i=i+2){
for(j=1; j<92; j=j*2){
s = s+1;
}
}
Seleccione una:
vale 64
vale 49
vale 7
vale 56
Esta es la respuesta correcta! :)
Al ejecutarse el siguiente segmento de programa, ¿qué serie de valores imprime?
int a=0, n=1, p=1, temp, j;
for(j=0; j<5; j++)
{
printf("%d, ", n); // imrpime n
a=p;
p=n;
n=a+p;
}
Seleccione una:
1, 1, 2, 3, 5,
1, 2, 3, 4, 5,
0, 1, 1, 2, 3,
1, 2, 3, 5, 8,
Esta es la respuesta correcta! :)
Al ejecutarse el siguiente segmento de programa, ¿qué valores se imprimen del vector lista?
int lista[5]={40,30,50,20,10};
int j,i, temp;
for(j=0;j<5;j++) {
for(i=0;i<5-1;i++) {
if(lista[i] < lista[i+1]) {
temp = lista[i];
lista[i] = lista[i+1];
lista[i+1] = temp;
}
}
}
for(j=0;j<5;j++) {
printf("%d, \t",lista[j]);
}
Seleccione una:
50, 40, 30, 20, 10
Esta es la respuesta correcta! :)
50, 10, 20, 30, 40
10, 20, 30, 40, 50
50, 30, 40, 20, 10
Qué problema resuelve el siguiente segmento de código?
int vector[4] = {30,5,6,8};
int i, j, a, n=4;
for(i=0; i < n/2; i++){
a=vector[i];
vector[i]=vector[n-i-1];
vector[n-i-1]=a;
}
Seleccione una:
Imprime : 30 5 6 8
Intercala los elementos del vector
No es correcto.
Invierte los elementos del vector ES LA CORRECTA
Ordena los elementos del vector
¿Qué valores quedan en la segunda fila de la matriz m después de este fragmento en lenguaje C?
int i, j, acum = 0;
int m[3][3] = {{1, 2, 3},
{4, 5, 6},
{7, 8, 9}};
for(i=0; i<3; i++){
for(j=1; j<3; j++){
m[i][j] = m[i][j] + m[i][j-1];
}
}
Seleccione una:
4, 9, 15
Esta es la respuesta correcta! :)
2, 5, 8
4, 5, 6
4, 9, 11
Analice las opciones propuestas y determine cuál de estas se cumple para la siguiente
condición.
if(!(n>9 || n<5))
Seleccione una:
Únicamente es verdadera para los valores de n = {5, 6, 7, 8, 9} CREO QUE ES ESTA
No se cumple sí los valores de n son {5, 9}
No es cierto, para los valores 5 y 9 se cumple la expresión
Se cumple para valores de n menores a 5 y mayores a 9
No se cumple si los valores son n = {6, 7, 8}
Analice las opciones propuestas y determine cuál de estas se cumple para la siguiente
condición.
if(!(n>11 || n<6))
Seleccione una:
Se cumple para valores de n menores a 6 y mayores a 11
No se cumple si los valores son n = {7, 8, 9, 10}
No se cumple sí los valores de n son {11, 6}
Únicamente es verdadera para los valores de n = {6, 7, 8, 9, 10, 11}
La respuesta es correcta :). Para los valores dados es verdadera y para el resto de valores no
se cumple la expresión
¿Cuál es el valor final de total que imprime el siguiente fragmento de programa si se ingresa
un promedio=4.5?
float promedio=0, matricula=100, total=0, x=0;
printf("Ingrese el promedio: ");
scanf("%f", &promedio);
if(promedio>4.5){
x=0.2;
}
else{
if(promedio>4 && promedio<4.5){
x=0.1;
}
else{
if(promedio>3.5 && promedio<4){
x=0.05;
}
else{
x=0.15;
}
}
}
total = matricula - matricula*x;
printf("Valor de matricula a pagar: %f \n", total); //imprime total
Seleccione una:
80
95
85
Respuesta correcta :). Después de que ninguna de las condiciones se cumple
90
¿Qué valores quedan en el vector v[] al final del siguiente fragmento en lenguaje C?
int i, j, v[5] = {0,1,2,3,4}
for(j=4; j<=20; j=j+8){
for(i=0; i<5; i++){
v[4-i] = v[4-i]+j-2*i;
}
}
Seleccione una:
{12, 19, 26, 33, 40}
{20, 20, 20, 20, 20}
{-4, -1, 2, 5, 8}
{0, 5, 10, 15, 20}
Al final de este fragmento de código en lenguaje C ¿cuál es el valor de la variable entera s?
note que el incremento de las variables después de hacer cada ciclo es diferente.
int s = 0, i, j;
for(i=5; i<20; i=i+2){
for(j=1; j<92; j=j*2){
s = s+1;
}
}
Seleccione una:
vale 49
vale 64
vale 7
vale 56
Esta es la respuesta correcta! :)
¿Qué valor se debe ingresar para salir del ciclo?
int n, mayor=0;
do {
printf("Ingrese un valor: ");
scanf("%d", &n);
if( n > mayor ) {
mayor = n;
}
printf("Ingrese el siguiente valor: ");
scanf("%d", &n);
} while(n != 0);
printf("EL mayor es: %d\n", mayor);
Seleccione una:
Un número igual a cero
Esta es la respuesta correcta! :)
Un número menor a cero
Un número mayor al anterior
Un número menor al anterior
Dado el siguiente fragmento de programa, indique la operación que se produce sobre el vector v. Asuma
que k es un índice válido del arreglo y que los índices del vector aumentan de izquierda a derecha.
while(k > 0){
v[k] = v[k-1];
k--;
}
Seleccione una:
Desplaza los primeros k+1 elementos del vector v a la izquierda
Calcula las diferencias entre los elementos k y k-1 del vector v.
Copia el elemento k del vector v en las primeras k posiciones.
No es correcto. No hay copia de valores, se esta asignando una posición nueva cada vez.
Desplaza los primeros k elementos del vector v a la derecha.
¿Cuál es la salida del fragmento en lenguaje C, cuando se imprime la variable entera aux?
int vector[8] = {3, 7, 4, 2, 5, 1, 6, 8};
int i, aux = 0;
for(i=0; i<8; i++){
aux = aux + vector[i];
if(aux > 22){
i=8;
}
}
printf("%d", aux); // imprimir(aux)
Seleccione una:
21
36
28
Esta es la respuesta correcta! :)
22
Interprete de manera correcta la operación que hace sobre una matriz de N filas y N columnas el
siguiente fragmento en lenguaje C.
int i, j, aux;
for(i=0; i<N; i++){
aux = 0;
for(j=0; j<N; j++){
aux = aux + m[j][i];
}
printf("%d ", aux); // imprimir(aux)
}
Seleccione una:
Imprime la suma de los elementos por cada fila de la matriz
Imprime los valores de la última fila de la matriz
Imprime la suma de los elementos por cada columna de la matriz
Esta es la respuesta correcta! :)
Imprime la suma de todos los elementos de la matriz
¿Qué valor se imprime con la variable acum al final del siguiente fragmento en lenguaje C?
int i, j, acum = 0;
int m[4][4] = {{ 0, 1, 2, 3},
{ 4, 5, 6, 7},
{ 8, 9,10,11},
{12,13,14,15}};
for(i=0; i<4; i++){
for(j=0; j<4; j++){
if(j == 2 || j == i)
acum = acum + m[i][j];
}
}
printf("acum = %d", acum); // imprimir(acum)
Seleccione una:
60
53
52
Esta es la respuesta correcta! :)
48
Dada la siguiente ecuación ¿cuál de las condiciones propuestas previene la ocurrencia de
errores antes del cálculo de la ecuación y permite que se den todos los valores válidos?.
Tenga en cuenta que a, b, c son variables reales (float)
Seleccione una:
if(sqrt(b*b – 4*a*c) > 0)
if(b*b >= 4*a*c && a != 0)
if(b*b > 4*a*c && a == 0)
if(-b + sqrt(b*b - 4*a*c)/(2*a) >= 0)
No es correcto. Si a es igual a cero la expresión produce un error
¿Qué imprime el siguiente fragmento en lenguaje C?
int i=22, j=3, resultado=0;
if(!((i > 4) || (j <= 6))){
resultado = i+j;
}
else{
resultado = i-j;
}
if(!((i < 4) || (j >= 6))){
resultado = i*j;
}
else{
resultado = i/j;
}
printf("%d", resultado);
Seleccione una:
7
66
El resultado es correcto. La condición if(!((i < 4) || (j >= 6))) si se cumple
25
19
¿Cuál es la última salida del siguiente segmento de código?
int a, b, n=6, x=0, y=0;
for(a=1; a<=n; a++){
if(a%2== 0) {
for(b=a; b<n; b++){
x=x+1;
}
printf("\n%d >> %d", a, x);
}
else{
for(b=1; b<a; b++) {
y=y+1;
}
printf("\n%d >> %d", a, y);
}
}
Seleccione una:
5 >> 6
5 >> 5
6 >> 0
6 >> 6
Esta es la respuesta correcta! :)
Analice la siguiente expresión con los posibles valores de verdadero o falso de las variables
lógicas X, Y, y seleccione la afirmación correcta.
!(X && !Y) == !Y || X
Seleccione una:
Siempre se cumple
No es cierto. El caso X = falso y Y = verdadero no cumple la expresión lógica
Solo se cumple si Y es verdadero
No se cumple si X es falso y Y es verdadero
Nunca se cumple
¿Qué valor se imprime con la variable acum al final del siguiente fragmento en lenguaje C?
int i, j, acum = 0;
int m[4][4] = {{ 0, 1, 2, 3},
{ 4, 5, 6, 7},
{ 8, 9,10,11},
{12,13,14,15}};
for(i=0; i<4; i++){
for(j=0; j<4; j++){
if((i+j)%2 == 0)
acum = acum + m[i][j];
}
}
printf("%d", acum); // imprimir(acum)
Seleccione una:
48
64
60
Esta es la respuesta correcta! :)
56
¿Qué función realiza el siguiente segmento de código asumiendo una matriz de
tamaño n filas por n columnas?
int i, j, s = 0;
for (i=0; i < n; i++) {
for (j=0; j < n; j++) {
if (i>j) {
s = s + matriz[i][j];
}
}
}
Seleccione una:
La suma de todos los valores de la matriz que están por encima de la diagonal principal
La suma de los totales acumulados por las filas de la matriz
No es correcto. No se suman todos los valores
La suma de todos los valores de la matriz que están por debajo de la diagonal principal
La suma de los valores de la diagonal principal de la matriz
Dada la siguiente ecuación ¿cuál de las condiciones propuestas previene la ocurrencia de
errores antes del cálculo de la ecuación y permite evaluar los casos válidos. Tenga en cuenta
que x es una variable real (float)
Seleccione una:
if(x-1 >= 0 || x < 1)
if(x >= -1 && x != 1)
Es correcto :)
if(x-1 > 0 && x != -1)
if(x > 1 && x < -1)
Interprete de manera correcta la operación que hace sobre una matriz de N filas y M columnas el
siguiente fragmento en lenguaje C.
int i, j, aux;
for(i=0; i<N; i++){
aux = m[i][0];
for(j=1; j<M; j++){
if(m[i][j] < aux){
aux = m[i][j];
}
}
printf("%d ", aux); // imprimir(aux)
}
Seleccione una:
Imprime el valor mínimo por cada fila de la matriz ESTA ES LA CORRECTA
Imprime los valores de la primera columna de la matriz
Imprime el valor máximo por cada fila de la matriz
No es correcto. La condición interna muestra otro propósito.
Imprime los valores de la última columna de la matriz
Dadas dos variables reales X, Y construya una expresión aritmético lógica que sea evaluada
como verdadera solo para los valores sombreados en la figura 1 y que sea evaluada como
falsa para el resto.
Seleccione una:
if(Y>=-1 && Y<=2 && !(Y>=0 && Y<=1) || X>=-1 && X<=4 && !
(X>=0 && X<=2))
No es correcto. Por ejemplo se cumple si Y es igual a 5
if((Y>=-1 && Y<=1 && X>=-2 && X<=2 || Y>=0 && Y<=2 && X>=0 && X<=4) &&
!(Y>=0 && Y<=1 && X>=0 && X<=2))
if(X>=-2 && X<=4 && Y>=-1 && Y<=2 || X<=2 && Y<=1)
if(Y>=-1 && Y<=1 && X>=-2 && X<=2 || Y>=0 && Y<=2 && X>=0 && X<=4)
¿Cuál es el valor final de la variable x después de ejecutar el siguiente segmento de código?
int x;
int y = 20, z = 8;
x = y / z;
if ( x <= 2){
x = z + y *2;
}
else{
x = z - y *2;
}
Seleccione una:
2.5
48
Esta es la correcta! :)
-32
56
Dado el siguiente fragmento de programa, indique la operación que se produce sobre el vector v. Asuma
que k es un índice válido del arreglo y que los índices del vector aumentan de izquierda a derecha.
while(k > 0){
v[k-1] = v[k];
k--;
}
Seleccione una:
Desplaza los primeros k elementos del vector v a la derecha.
Copia el elemento k del vector v en las primeras k posiciones.
Esta es la respuesta correcta! :)
Desplaza los primeros k+1 elementos del vector v a la izquierda
Calcula la suma de los primeros k+1 elementos del vector v en la primera posición de este.
Al ejecutarse el siguiente segmento de programa, ¿qué valores se imprimen de la matriz mat?
int mat[3][3]={{1,2,3},{4,5,6},{7,8,9}};
int f,c;
for(f=0;f<3;f++) {
for(c=0;c<3;c++) {
if(c<f) {
printf("%d, \t", mat[f][c]);
}
}
}
printf("\n");
Seleccione una:
4, 7, 8
Esta es la respuesta correcta! :)
2, 3, 6
1, 5, 9
1, 4, 5