⚡👉 Tablas de verdad con binarios
⚡Tablas de verdad
Introducción
¿Qué es una operación matemática?
Propiedades y orden de las operaciones
Quiz: Introducción
Sistema binario
¿Qué es el sistema binario?
Conversión entre binario y decimal
Suma y resta de binarios
Multiplicación y división de binarios
Quiz: Sistema binario
Operadores
¿Qué son las tablas de verdad?
Operadores lógicos
Operadores aritméticos
Operadores de comparación
Reto 0: identifica los operadores
Quiz: Operadores
Algoritmos y diagramas de flujo
¿Qué es un algoritmo? ¿Cómo resolver problemas con algoritmos?
¿Qué es un diagrama de flujo?
Reto 1: ¿hay dinero en el cajero electrónico?
Reto 2: buscador de ciudades
Reto 3: login de usuarios
Quiz: Algoritmos y diagramas de flujo
Próximos pasos
Toma el Curso de Pensamiento Lógico: Tipos de Datos y Estructuras de Control
You don't have access to this class
Keep learning! Join and start boosting your career
Truth tables are a tool that help us to determine which are the necessary conditions for a proposed statement to be true or valid. They are used as a support to make decisions from a given result.
There are 3 types of truth tables, these are; negation, conjunction and disjunction, next we will know more about how they work.
This table is characterized for being the simplest of all, because it is the one with the least number of actors.
The way this table works is by returning the opposite value of the proposition considered, that is, if a statement is true, the negation of this will make it false or vice versa, if the condition is false when it is negated, the result will be true.
A | -A |
---|---|
V | F |
F | V |
Conjunction can be seen as the union of two values. The way it works is that something is true when both parts involved are true and when the parts are different, the result is false.
A | B | A^B |
---|---|---|
V | V | V |
V | F | F |
F | V | F |
F | F | F |
In disjunction something will be true when at least one of the propositions is true, otherwise it will be false.
A | B | A∨B |
---|---|---|
V | V | V |
V | F | V |
F | V | V |
F | F | F |
We invite you to think of use cases that truth tables can have, once you do, share with us in the commentary session your conclusion!
Course contribution created by: Silfredo Ibarra.
Contributions 236
Questions 8
⚡👉 Tablas de verdad con binarios
⚡Tablas de verdad
Me costaba entender las tablas de verdad 😦 Pero, hice unos apuntes con ejemplos de frutas 🍏🍎 y entendí mejor cómo funcionan 😅
.
💚 Aquí te dejo los apuntes: Qué son las tablas de verdad: reglas y ejemplos con frutas
p = ~ p
1 = 0
0 = 1
p q = p^q
1 * 1 = 1
1 * 0 = 0
0 * 1 = 0
0 * 0 = 0
p q = pvq
1 +1 = 1
1 + 0 = 1
0 + 1 = 1
0 + 0 = 0
Resumen
Algunos apuntes que tome durante la clase 💚
Tablas de Verdad…
Negación es la que nos devuelve el valor opuesto del valor que se proporcionó.
V = F
F = V
.
Conjunción es verdadera si ambos valores son verdaderos, pero es falsa si existe un solo valor falso o ambos.
V + V = V
V + F = F
F + V = F
F + F = F
.
Disyunción será falsa cuando ambos valores sean falsos, será verdadero cuando al menos uno de los dos valores o ambos son verdaderos. Lo opuesto a la conjunción.
V + V = V
V + F = V
F + V = V
F + F = F
Utilizando Binarios:
Negación contrario a lo que teníamos.
1 = 0; 0 = 1;
Conjunción es verdadero cuando ambos son verdaderos (Y o AND)
1 1 = 1;
1 0 = 0;
0 1 = 0;
0 0 = 0;
Disyunción cuando al menos 1 de los valores sea verdadero, será verdadero. (OR)
0 0 = 0;
1 0 = 1;
0 1 = 1;
1 1 = 1;
Devuelve el valor opuesto de la proposición considerada
Solo es verdadera cuando ambas son verdaderas
V V => V
Solo es falso cuando ambas son falsas
F F => F
1 = true o encendido
0 = false o apagado
Este video de Freddy, me aclaró muchísimo las dudas:
gracias platzi por todo lo que enseña
Mi consejo es que revisen los recursos compartidos si quieren tener un conocimiento mas claro. Les va a servir de mucho si lo tienen claro desde el principio.
Tablas de Verdad con Números Binarios
Es necesario leer el blog y ver el vídeo de apoyo, se entiende mucho mejor.
La negación se representa en código con “!”
const a = true;
// negación
const notA = !a; // true
La conjunción se representa con “&&”
const a = true;
const b = false;
// conjunción
const result = a && b; // false
La disyunción se representa con “||”
const a = true;
const b = false;
// disyunción
const result = a || b; // true
Tablas de verdad
Herramienta que nos ayuda a determinar cuáles son las condiciones necesarias para que sea verdadero o válido un enunciado o propuesta.
Negación: Devuelve el valor opuesto de la proposición considerada.
EJ/
Conjunción: Es verdadera cuando ambas son verdaderas.
EJ/
Disyunción: Será verdadera cuando por lo menos una de las proposiciones es verdadera, de lo contrario será falsa.
EJ/
Les dejo esta imagen que me pareció bastante completa.
Aquí les dejo mi resumen:
def tabla_verdad(tipo_tabla, p, q):
"""Crea una tabla de verdad para dos proposiciones y los operadores lógicos"""
# Encabezado de la tabla
print(f"{'p':^5} {'q':^5} {'not p':^6} {tipo_tabla:^6}")
print("-" * 26)
# Filas de la tabla
for i in range(2):
p_val = i
q_val = i
# Evaluar la negación de p
not_p_val = int(not p_val)
# Evaluar la proposición compuesta
if tipo_tabla == 'AND':
pq_val = p_val and q_val
elif tipo_tabla == 'OR':
pq_val = p_val or q_val
elif tipo_tabla == 'XOR':
pq_val = p_val ^ q_val
else:
raise ValueError("Tipo de tabla no válido")
# Mostrar la fila en la tabla
print(f"{p_val:^5} {q_val:^5} {not_p_val:^6} {pq_val:^6}")
# Pedir al usuario los valores de p y q y el tipo de tabla
p = int(input("Valor de p (0 o 1): "))
q = int(input("Valor de q (0 o 1): "))
tipo_tabla = input("Tipo de tabla (AND, OR, XOR): ")
# Mostrar la tabla de verdad
tabla_verdad(tipo_tabla, p, q)
Mis tablas de verdad con binarios
Para quienes quieran entender más a detalle las tablas de verdad de
Les recomiento ver este video del canal "Pasos por Ingenieria"
https://www.youtube.com/watch?v=CjX8q8lXWdg
compañeros este tema es muy amplio y fue resumido en solo 5 minutos y no hubo casi ejemplos. me parece que nos toca adquirir conocimientos por otros medios.
les dejo el siguiente enlace para que introduzcan mucho más en este tema.
https://www.youtube.com/playlist?list=PLeySRPnY35dHBYcVHPisjBCVHBa954rMZ
NEGACION
V — F
F —V
NEGACION EN BINARIO
1 — 0
0 —1
CONJUNCION
V / V - V
V / F - F
F / V - F
F / F - F
CONJUNCION EN BINARIO
1 / 1 - 1
1 / 0 - 0
0 / 1 - 0
0 / 0 - 0
DISYUNCION
V / V - V
V / F - V
F / V - V
F / F - F
DISYUNCION EN BINARIO
1 / 1 - 1
1 / 0 - 1
0 / 1 - 1
0 / 0 - 0
Si quieren profundizar un poco más sobre los temas que damos en el curso les recomiendo un libro llamado fundamentos de lógica digital
🍃Las tablas de verdad se utilizan en una amplia variedad de aplicaciones en las que es necesario comprender cómo funcionan las relaciones lógicas entre diferentes variables o conceptos. Algunos ejemplos de casos de uso real de las tablas de verdad incluyen:
Diseño de circuitos electrónicos: Las tablas de verdad se utilizan para representar y probar las relaciones lógicas entre los componentes de un circuito electrónico, como interruptores y luces.
Desarrollo de software: Las tablas de verdad se utilizan para probar la funcionalidad de las aplicaciones de software, asegurándose de que los resultados sean los esperados en función de diferentes entradas.
Análisis de sistemas de control: Las tablas de verdad se utilizan para representar y probar las relaciones lógicas entre los componentes de un sistema de control, como sensores y actuadores.
Análisis de sistemas de señalización: Las tablas de verdad se utilizan para representar y probar las relaciones lógicas entre los componentes de un sistema de señalización, como semáforos y señales de tráfico.
Análisis lógico: Las tablas de verdad se utilizan para representar y probar la validez de argumentos y teoremas lógicos en una amplia variedad de campos, incluidas las matemáticas, la filosofía y las ciencias sociales.
Estos son solo algunos ejemplos de los muchos casos de uso real de las tablas de verdad en diferentes campos y disciplinas
😃
En inglés la negación es NOT, la conjunción es AND y la disyunción es OR.
Lo veo de esta forma:
Cuando dos socios se unen (Conjunción), y ambos tienen una actitud positiva frente a los conflictos o situaciones que se enfrenten a diario dentro del desarrollo de la empresa, posiblemente seguirán con manteniendo esa actitud a lo largo del tiempo pese a los obstáculos (V^V = V), pero si tan solo uno de ellos se enfrasca en lo negativo, la actitud positiva siempre estará afectada por lo negativo (V^F=F) o lo (F^V=F) o (F^F=F). Ahora, cuando se separen el socio B decida irse, en la empresa quedara A, y cada uno de ellos se mantendrá su misma energía.
DISYUNCION
A B RESULTADO
V F V
F V V
V V V
F F F
Práctica con binarios:
NOT:
0 => 1
1 => 0
AND (conjunción):
0 ⋏ 1 => 0
1 ⋏ 1 => 1
0 ⋏ 0 = 0
se puede decir también que es una multiplicación:
0 x 1 = 0
1 x 1 = 1
0 x 0 = 0
OR (disyunción):
0 v 0 => 0
0 v 1 => 1
1 v 1 => 1
se puede decir también que es como la suma:
0 + 0 = 0
0 + 1 = 1
1 + 1 = 1
Reto de la clase utilizando binarios.
Reto de la clase usando binarios
Negación (Not)(lo contrario)
--------
A | ¬A
-------
0 | 1
1 | 0
-------
Cojunción (And)(como multi)
A B A/\B
----------
1 1 1
1 0 0
0 1 0
1 0 0
Disyunción (Or)(como suma)
A B AVB
--------
1 1 1
1 0 1
0 1 1
0 0 0
El video de youtube que se detalla en los recursos de esta clase, añade gran valor a la misma, 100% recomendable.
Aqui la diferencia de la simbología entre la disyunción incluyente y excluyente
V= 1 F=0
conjunción =and = multiplicación
disyunción = or = suma
disyunción fuerte = xor = si son iguales es 0 si son diferentes es 1
Que bueno hubiese sido que en el colegio hubiesen explicado todo de esta manera.
Son una herramienta que nos ayuda a determinar si es válido o falso un enunciado.
:
dec_num1 = int(num1, 2)
dec_num2 = int(num2, 2)
match op:
case "+":
res = dec_num1 + dec_num2
case "-":
res = dec_num1 - dec_num2
case "*":
res = dec_num1 * dec_num2
case "/":
res = dec_num1 // dec_num2
case _:
res = 0
res_bin = bin(res)[2:]
print(res_bin)
return res_bin
tener presente diferencia entre y o para las tablas de verdad,
Fun fact: Wittgenstein fue quien desarrollo las tablas de verdad como las conocemos en su obra “Tractatus Logico-Philosophicus”
Entender esto se me hizo mas facil cuando empece a programar
Las tablas de verdad desempeñan un papel fundamental tanto en la programación como en el pensamiento lógico. Son herramientas esenciales para comprender el comportamiento de las operaciones lógicas y las expresiones condicionales en los programas. Estas tablas permiten analizar exhaustivamente todas las combinaciones posibles de valores de entrada y evaluar cómo afectan a las salidas.
En programación, las tablas de verdad son esenciales para diseñar y depurar algoritmos complejos. Ayudan a verificar si los flujos de control y las declaraciones condicionales funcionan según lo previsto en todas las situaciones. Además, el pensamiento lógico que se desarrolla al trabajar con tablas de verdad es crucial para crear programas eficientes y sin errores.
Desde una perspectiva más amplia, las tablas de verdad también fomentan el desarrollo del pensamiento crítico y la habilidad para descomponer problemas en componentes más pequeños y manejables. Esta habilidad es esencial en la programación, donde la resolución de problemas implica dividirlos en pasos lógicos y secuenciales.
En definitiva, las tablas de verdad son una herramienta clave para construir bases sólidas en programación y pensamiento lógico. Proporcionan una comprensión profunda de cómo se relacionan las operaciones lógicas y contribuyen a la creación de software eficiente, preciso y lógicamente sólido.
Want to see more contributions, questions and answers from the community?