Autor Tema: Valor de verdad de expresiones lógicas con and, or, mayor, menor, comparaciones  (Leído 7157 veces)

ivan15

  • Sin experiencia
  • *
  • APR2.COM
  • Mensajes: 21
    • Ver Perfil
Hola buenas gente, me dieron un ejercicio en programacion pero no tengo ni idea de como se hace, me podrian tirar alguna idea para resolverlo? es este.

Código: [Seleccionar]
Indique el valor de verdad de las siguientes expresiones lógicas considerando las declaraciones

dadas a continuación:

int puntos = 10;

int intentos = 5;

boolean esValido = (puntos > 0) && (puntos < 15);

boolean terminoPartido = (intentos >= 5) || (puntos > 9);

• esValido && (intentos < 10) && ! terminoPartido

• !( (intentos < puntos) || (intentos == 4) || (! terminoPartido) )

• ( (! terminoPartido) || ((puntos < 3) && (intentos > 5) && esValido))

• (! esValido) || (esValido && !terminoPartido) ||

(esValido && terminoPartido && (puntos < intentos))
« Última modificación: 28 de Agosto 2015, 12:38 por César Krall »

GonzaH

  • Sin experiencia
  • *
  • APR2.COM
  • Mensajes: 30
  • SMFPersonal
    • Ver Perfil
    • SMFPersonal
Re:valor de verdad de expreciones logicas
« Respuesta #1 en: 27 de Agosto 2015, 20:12 »
Hola Ivan, por logica y por lo que entiendo tenes que analizar esas codiciones y ver si te da verdadero o falso

Ejemplo vamos a realizar una para que ver si logras entender y puedas hacer las siguentes

Esta seria la condición
Código: [Seleccionar]
esValido && (intentos < 10) && ! terminoPartido
Entonces revisamos la funcion esValido y vemos que dice que si puntos es mayor que 0 y que si puntos es menor 15 seria verdadero. Comprobamos puntos vale 10 y puntos es mayor que 0 y menor que 15 asi que es verdero. Despues nos vamos a comprobar la otra parte por que hay un operador and que seria intentos es menor que 10 intentos vale 5 asi que intentos es menor que 10 y da verdadero, despues nos vamos ala ultima ! terminoPartido
terminoPartido dice que que si intentos que vale 5 es mayor o igual 5 o  si puntos es mayor que  10 se cumpla la condicion en este caso da verdadero pero como  tenemos adelante ! lo que hace este operador es darlo vuelta ejemplo si nos da verdadero lo convierta a falso y viceversa.

Entonces dijimos que esValido nos daba verdadero y (intentos < 10) tambien pero ! terminoPartido nos da falso por el operador !. Entonces en esta condicion nos daria falso por que una de esas tres condicione no se cumple.

¡Saludos!
« Última modificación: 27 de Agosto 2015, 20:16 por GonzaH »

ivan15

  • Sin experiencia
  • *
  • APR2.COM
  • Mensajes: 21
    • Ver Perfil
Re:valor de verdad de expreciones logicas
« Respuesta #2 en: 27 de Agosto 2015, 20:59 »
Hola muchas gracias, entonces si tengo un operador and, todas las condiciones tienen que ser verdaderas para que sea verdadera?, segun lo que entendi seria algo asi no?

esValido && (intentos < 10) && ! terminoPartido  ----> esta seria falsa porque terminopartido es verdadera pero como hay un inversor se transforma en falsa y las otras 2 son verdaderas pero como hay 1 falsa entonces su valor de verdad es falso?


PD: y si tengo un negador al principio como aca  • !( (intentos < puntos) || (intentos == 4) || (! terminoPartido) )

seria falsa directamente no?
« Última modificación: 27 de Agosto 2015, 21:02 por ivan15 »

GonzaH

  • Sin experiencia
  • *
  • APR2.COM
  • Mensajes: 30
  • SMFPersonal
    • Ver Perfil
    • SMFPersonal
Re:valor de verdad de expreciones logicas
« Respuesta #3 en: 27 de Agosto 2015, 21:32 »
Cuando tenes un operador and (&&) todas las codiciones tiene que ser verdadera para que se cumplan, pero cuando tenes el operador or (||) que seria "o" si una condición  da verdadera entraria como verdadera.

Citar
y si tengo un negador al principio como aca  • !( (intentos < puntos) || (intentos == 4) || (! terminoPartido) )

Da falso, por que tiene adelante el operador adelante ! pero si no tiene el operador adelante ! que condicion se cumple para que te de verdadero?


ivan15

  • Sin experiencia
  • *
  • APR2.COM
  • Mensajes: 21
    • Ver Perfil
Re:valor de verdad de expreciones logicas
« Respuesta #4 en: 27 de Agosto 2015, 21:58 »
Se cumpliria la condicion terminoPartido que es verdadera
« Última modificación: 28 de Agosto 2015, 12:39 por César Krall »

GonzaH

  • Sin experiencia
  • *
  • APR2.COM
  • Mensajes: 30
  • SMFPersonal
    • Ver Perfil
    • SMFPersonal
Esta condicion da falso por el operador !  (! terminoPartido) , pero esta (intentos < puntos) da verdadero y esta  (intentos == 4) falso. Entonces tenemos tres condiciones que dos dan falso y una verdadero. Acardate que estamos con el operador OR (||) que dice que si una de las condiciones da verdadero entra. Entonces esta condicioón da verdadero ( (intentos < puntos) || (intentos == 4) || (! terminoPartido) ) por que una de esas tres condiciones es verdadera, pero acordate que tenes el operador !( (intentos < puntos) || (intentos == 4) || (! terminoPartido) ) que dice que si nos da verdadero lo convierte en falso.

¡Saludos!

ivan15

  • Sin experiencia
  • *
  • APR2.COM
  • Mensajes: 21
    • Ver Perfil
Esta condicion da falso por el operador !  (! terminoPartido) , pero esta (intentos < puntos) da verdadero y esta  (intentos == 4) falso. Entonces tenemos tres condiciones que dos dan falso y una verdadero. Acardate que estamos con el operador OR (||) que dice que si una de las condiciones da verdadero entra. Entonces esta condicioón da verdadero ( (intentos < puntos) || (intentos == 4) || (! terminoPartido) ) por que una de esas tres condiciones es verdadera, pero acordate que tenes el operador !( (intentos < puntos) || (intentos == 4) || (! terminoPartido) ) que dice que si nos da verdadero lo convierte en falso.

¡Saludos!

Muchas gracias con lo que me explicaste ya pude hacer casi todos los ejercicios que me dieron, saludos


EDIT: tengo otra consulta, ahora me piden esto:

Código: [Seleccionar]
9. A partir de las siguientes variables:
int notaPrimerParcial
int notaSegundoParcial
boolean aproboRecuperatorio
boolean aproboTrabajosPracticos
boolean aproboFinal
construir una expresión booleana que indique si un alumno aprobó o no la materia, considerando la
posibilidad de promocionarla.

el problema es que para promocionar la materia se nesecita un 7o + en los 2 parciales y para aprobarla 4 como minimo, asi que tendria que poder asignarle valores aleatoreos a notaprimerparcial y a notasgundo parcial, o como tendria que hacerlo?
« Última modificación: 28 de Agosto 2015, 22:36 por ivan15 »

GonzaH

  • Sin experiencia
  • *
  • APR2.COM
  • Mensajes: 30
  • SMFPersonal
    • Ver Perfil
    • SMFPersonal
Que lenguaje estas aprendiendo, estos enunciado hay que hacerlo todo en papel??

¡Saludos!

ivan15

  • Sin experiencia
  • *
  • APR2.COM
  • Mensajes: 21
    • Ver Perfil
Que lenguaje estas aprendiendo, estos enunciado hay que hacerlo todo en papel??

¡Saludos!

Estoy aprendiendo java, pero primero estoy empezando con una vercion mas simple que se llama dr.java, saludos, los puedo hacer donde quiera, no son de resolucion obligatoria solo para practicar

GonzaH

  • Sin experiencia
  • *
  • APR2.COM
  • Mensajes: 30
  • SMFPersonal
    • Ver Perfil
    • SMFPersonal
Podrias empezar estudiar este tutorial Java desde 0 para aprender su sintaxis. Con el tema del enunciado yo podria ayudarte con la lógica , pero no con el código ya que desconozco el lenguaje Java.

¡Saludos!

ivan15

  • Sin experiencia
  • *
  • APR2.COM
  • Mensajes: 21
    • Ver Perfil
Podrias empezar estudiar este tutorial Java desde 0 para aprender su sintaxis. Con el tema del enunciado yo podria ayudarte con la lógica , pero no con el código ya que desconozco el lenguaje Java.

¡Saludos!

oka gracias!

 

Sobre la educación, sólo puedo decir que es el tema más importante en el que nosotros, como pueblo, debemos involucrarnos.

Abraham Lincoln (1808-1865) Presidente estadounidense.

aprenderaprogramar.com: Desde 2006 comprometidos con la didáctica y divulgación de la programación

Preguntas y respuestas

¿Cómo establecer o cambiar la imagen asociada (avatar) de usuario?
  1. Inicia sesión con tu nombre de usuario y contraseña.
  2. Pulsa en perfil --> perfil del foro
  3. Elige la imagen personalizada que quieras usar. Puedes escogerla de una galería de imágenes o subirla desde tu ordenador.
  4. En la parte final de la página pulsa el botón "cambiar perfil".