Programación y Matemáticas Discretas,Macro validación de celdas
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
p V 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 | p 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 el que se muestra en la imagen
Después esto lo pasamos a código de programación en una macro de Excel
Columna A1 es p
Columna B1 es q
Programar en excel
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:
Objetivo
Objetivo
"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
- que la columna C sea igual a MA
- 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
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
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.
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:
Además 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.
Comentarios
Publicar un comentario