Ejercicios básicos Java para practicar el operador condicional
? :
Ejercicio 1: Un
programa contiene las siguientes declaraciones y asignaciones iniciales de
variables:
int i = 8, j = 5, k;
float x = 0.005F, y = -0.01F, z;
char a, b = 'p', c = 'q';
Determina
el valor de cada una de las siguientes expresiones:
a) k = (j == 5) ? i : j; b) k = (j > 5) ? i : j;
c) z = (x >= 0) ? x : 0; d) z = (y >= 0) ? y : 0;
e) a = (b < c) ? b : c; f) k = (j > 0) ? j : 0;
g) k = (i > 0 && j > 0) ? 0 : 1; h) k = (y > 0 || x > 0) ? i + 1 : i - 1;
i) a = (b < 'c') ? b : c; j) a = (b >= c) ? b : 'r';
Ejercicio 2: Un
programa contiene las siguientes declaraciones y asignaciones iniciales de
variables:
int i = 1, j = 1, k = 1, x;
Determina el valor que toma la
variable x al ejecutarse cada una de las siguientes expresiones. Las
instrucciones son independientes unas de otras, es decir, el valor inicial para
las variables i, j, k en cada instrucción es i = 1, j = 1, k = 1.
a) x = (j >= 0 && k > 1) ? ++j : k+1; b) x = (j > 1 || k >= 1) ? j+3 : k+1;
c) x = (j >= 1 && i <= 1) ? 10 : 20; d) x = (i + j > 2 || k < 1) ? 2 : 4;
e) x = (3 / 2 > i) ? j+5 : k; f) x = (3 % 2 > i) ? j++ : ++k;
g) x = (i + 10 <= j + 10 || k == 0) ? -1 : -2; h) x = (i == 0 || j == 1 || k == 2) ? 0 : 5;
i) x = (i == 0 || j == 1 && k == 2) ? 0 : 5; j) x = (i != 0 || j == 1 && k == 2) ? 0 : 5;
Puedes encontrar más ejercicios para seguir practicando en este libro.
Contiene ejercicios resueltos sobre los conceptos básicos del lenguaje java: Declaración de variables, literales, tipos de datos, operadores, crear expresiones algebraicas correctas, etc.
Las soluciones de los ejercicios incluyen una explicación detallada sobre cómo se ha resuelto.
El contenido del libro es una recopilación de ejercicios realizados en mis clases de Programación en los ciclos formativos de grado superior Desarrollo de aplicaciones web y Desarrollo de aplicaciones multiplataforma.
Soluciones:
En las soluciones de los
ejercicios sólo se muestra el resultado final. Si cuando los resuelvas no
coincide con tu resultado deja un comentario que contenga tu solución y podemos
ver dónde está el error.
Solución ejercicio 1:
a) k = 8
b) k = 5
c) z = 0.005
d) z = 0
e) a = 'p'
f) k = 5
g) k = 0
h) k = 9
i) a = 'q'
j) a = 'r'
Solución ejercicio 2:
a) x = 2
b) x = 4
c) x = 10
d) x = 4
e) x = 1
f) x = 2
g) x = -1
h) x = 0
i) x = 5
j) x = 0
como resultado 255 :( xD ayuda porfavor
ResponderEliminarint i=5, j=8;
int k=0;
float x=0.005f, y=0.01f,z=0;
char a,b='p', c='q';
System.out.println(a+(b<'c'? b:c));
En esta operación a+(b<'c'? b:c)) la variable a no tiene un valor asignado.
Eliminaren el ejercicio 2.j el resultado no sería 0 en vez de 5?
ResponderEliminar(i != 0 || j == 1 && k == 2) // La operación lógica no se cumple.
Eliminar(1 != 0 || 1 == 1 && k == 2)
( T || T && F )
( T && F )
( F )// La condición no se cumple, así que se lleva a cabo la segunda sentencia que es 5.
if ( condicion ) { sentencia1 } else { sentencia2 }
x = (i != 0 || j == 1 && k == 2) ? 0 : 5 ;
x=5
x=0 por el orden de precedencia de los operadores. Primero resuelve el and y luego el or
Eliminarsi deberia ser 0 creo que hay un error en la solucion
ResponderEliminar