jueves, 4 de julio de 2019

Programación y Matemáticas Discretas Ejemplo Macro validación de variables

Hola lectores bienvenidos a otro post, esta semana quiero darle continuación al post anterior de matemáticas en la programación , en esta ocasión quiero platicarles de matemáticas discretas.

Las matemáticas discretas son el apartado donde podemos filosofar jajaja porque haces comparaciones o llegas a deducciones en base a la lógica proposicional, por ejemplo  la frase: ella  esta feliz o esta enojada, aquí tenemos una oración que que podemos primero convertir a lógica:

Proposiciones
p = esta feliz
q = esta enojada

como se simboliza
 q

Esta es una disyunción

Vean los datos de Wikipedia Disyunción lógica


Luego esto lo podemos ver en una tabla de verdad

p q V  q
V V V
V F V
F V V
F F F

Esta tabla lo que nos dice es que puede cumplir las 2 condiciones y es cierta la afirmación o con que sea verdad alguna de las proposiciones p, q  se cumplan la sentencia es verdadera

Esto en electrónica también tiene su propio símbolo que es



Después esto lo pasamos a código de programación en una macro de Excel 

Columna A1 es p
Columna B1 es q


Es muy importante entender estas bases, porque en la programación siempre tendremos cálculos o transacciones que realizar siempre y cuando se cumplan ciertas condiciones por ejemplo un usuario o tu mismo,te planteas la automatización de un proceso: 
"Realizar macro en Excel que tome de una hoja La cantidad de inventario y la multiplique por el precio unitario, solo si el tipo de inventario es materia prima  (MA) que es la columna D y los códigos de los artículos son del proveedor ingresado en la Columna C es igual a Kato y el resultado lo debe mostrar en un mensaje"


  • Primero vamos a revisar la sentencia, dice que debo considerar 2 cosas antes de realizar el cálculo 
  1. que la columna C sea igual a MA
  2. que la columna D sea igual a Kato


Vamos a ver el código en nuestra macro


Código
Private Sub CommandButton1_Click()
Dim Fila,cont As Integer
Fila = 2
cont = 0
Do While Cells(Fila, "A") <> ""
  If Cells(Fila, "c") = "MA" And Cells(Fila, "D") = "KATO" _
  Then cont = cont + (Cells(Fila, "b") * Cells(Fila, "g"))
  Fila = Fila + 1
Loop

MsgBox "Total " & cont
End Sub


Primero definimos 2 variables una para ir avanzando en el archivo y otra para mostrar el total
Dim Fila,cont As Integer
Fila = 2
cont = 0

Después realizamos el ciclo, hasta que no encuentre items y hacemos la búsqueda de nuestra información 

Do While Cells(Fila, "A") <> ""
  If Cells(Fila, "c") = "MA" And Cells(Fila, "D") = "KATO" _
  Then cont = cont + (Cells(Fila, "b") * Cells(Fila, "g"))
  Fila = Fila + 1
Loop

Mostramos el resultado

MsgBox "Total " & cont



Corramos la macro con los siguientes datos


Resultado


Es un ejemplo muy sencillo de realizar validaciones en la información y mostrar un resultado.

También hay varios memes por ejemplo de la pagina de Facebook , I'm a programmer I not life , que hacen referencia a la inteligencia artificial (AI) donde se utilizan IF y ELSE para su uso.


Inteligencia Artificial Meme



Y no es que sea malo, pero es muy cierto la vida cotidiana son una serie de decisiones y de condiciones que hay que cumplir para seguir cierta lógica, incluso cuando nosotros mismos decidimos entre ir un evento u otro, si siempre fuéramos coherentes podríamos utilizar la lógica para todo, pero no somos así  somos espontaneamos, tenemos emociones, estados de humor diferente, pero una computadora no, así que enseñarle todo esto es un mar de información, leía hace tiempo que cada maquina para esto existen varios lenguajes de acuerdo a la pagina de Aditec el top son:

  • Python
  • R
  • Lisp (les recuerdo a Logo)
  • Prolog
  • Java
Ademas de la lógica matemática la inteligencia artificial tiene muchas otras técnicas y algoritmos, no solo son IF y ELSE.

Espero les haya gustado este post y el ejemplo les sea de utilidad, nos leemos la próxima semana.

No hay comentarios.:

Publicar un comentario

Entrada destacada

Como Programar en Pascal y Delphi, ejemplo calculadora en Delphi

Que tal amigos, bienvenidos a otra semana de nuestro blog, les quiero platicar acerca de un lenguaje de programación que se llama Pascal, ...