Ir al contenido principal

Matemáticas en Programación con ejemplo Calculadora en Progress 4gl

Hola :

Bienvenidos a otra semana en el blog, hasta ahorita llevamos 10 post, donde espero les haya gustado y funcionado los ejemplos ya sea para el trabajo. la escuela o por hobby.


Esta semana antes de seguir platicando de otros lenguajes de programación, quiero que veamos un poco de análisis de datos y de instrucciones matemáticas que nos sirven de base para cualquier lenguaje. Como vimos en el post de SQL esta basado en Álgebra relacional.

Las matemáticas vamos a pensar que es como el  amigo mas honesto y sincero que tengamos, es decir las matemáticas no mienten nos dicen siempre la mismo resultado y siempre son de la misma manera.

En la programación haremos uso de ellas siempreeee, pensemos en las matemáticas básicas: sumar, restar, multiplicar, dividir 

Para estas operaciones en cada lenguaje tendremos los símbolos 

suma = símbolo aditivo +
restar = símbolo 
multiplicar = símbolo *
dividir = símbolo /

Y tendremos variables por lo menos 2, para poder realizar los cálculos es decir 

c =a + b
c =a - b
c =a * b
c = a / b  

La ultima instrucción puede llegar a causar errores en los programas, porque los lenguajes pueden decirnos que no pueden dividir valores en cero por ejemplo si les decimos

c = 10 / 0  

Los lenguajes se vuelven locos, pensando como hago eso, eso no es posible por lo que debemos evitar dar esas instrucciones o ponerlas entre bloques de excepciones, que es decirle si encuentras este caso has esta otra instrucción y no enloquezcas.

Tenemos otras operaciones que son:

Residuo o Modulo = símbolo %, Mod 

Lo que nos da es el residuo o la diferencia en las divisiones por ejemplo 10/5 = 2 su modulo es cero, 3/2 = 1 y su modulo es 1 .

Raíz Cuadra         = símbolo SQRT
Exponencial         = símbolo EXP, POW
Logaritmos          = simbolo LOG

Ejemplo

En Progress 4gl 


DEF VAR A AS INT INITIAL 0.
DEF VAR B AS INT INITIAL 0.
UPDATE A B.

DISPLAY SKIP.

DISPLAY "SUMA          "  A + B SKIP.
DISPLAY "RESTA         " A - B SKIP.
DISPLAY "MULTIPLICACION" A * B SKIP .
DISPLAY "DIVISION      "  A / B SKIP.
DISPLAY "MODULO        "    A MOD B SKIP.
DISPLAY "RAIZ CUADRADA " SQRT(A) SKIP.
DISPLAY "EXPONENCIAL   "   EXP(A,B) SKIP.

DISPLAY "LOGARITMOS    "    LOG(A) SKIP.

Es importante decirles que en Progress  deben dejar un espacio entre la variable y el operador si no les va a marcar error
Unknown Field or Variable name - A+B.

En Progress 4gl, para agregar comentarios que código que no se va a ejecutar o que son textos que nos sirven de referencia porque después de que acaben un programa crean me no se van acordar bien que programaron, porque va cambiando la forma en que programamos con el tiempo. 
/*comentarios ente estos signos*/

Ejecutamos el programa y nos va a pedir 2 números:

Ingreso de datos en Progress

El resultado


Vamos  a causarle un error con la división en cero
Como pueden ver marco un erro en la división con valor ? , que es un nulo o NULL o Nill

Practica.

Imaginen que les piden un programa que pueda calcular el promedio de varios números, lo que pueden hacer es realizar es un programa que pida la lista de 10 datos, los suma y van guardando el valor en la variable C y al final la dividen entre 10, intenten hacer ese programa en el lenguaje que se sientan más cómodos para programar, puede ser en Macro o en Javascript.

Si van iniciando también pueden  hacer su primera calculadora. 

Les comparto mi ejemplo de Calculadora en Progress 4gl, vamos a utilizar las instrucciones CASE, WHEN and OTHERWISE que es el equivalente a SWITCH en JAVA o .NET, el objetivo de esta instrucción es plantear el uso de un menú y de acuerdo a la opción seleccionada realizar una actividad, en este caso tenemos 1 pantalla con la instrucción FORM y 2 numeros de entrada A y B, escribí el MENU y para leer el valor le coloque la variable OPE , dentro del programa con la opción de CASE valido que dato ingresa el usuario y en base a ello realizó la operación.

DEF VAR A AS INT INITIAL 0.

DEF VAR B AS INT INITIAL 0.

DEF VAR OPE AS CHAR INITIAL "SUMA".


FORM
  SKIP(1)
  A    COLON 15 LABEL "Data 1"
  B    COLON 15 LABEL "Data 2"
  "***CALCULADORA***"   COLON 15
  "SUMA"           COLON 15
  "RESTA"          COLON 15
  "MULTI"          COLON 15
  "DIV"            COLON 15
  "MODULO"         COLON 15 
  "RAIZ"           COLON 15
  "EXPO"           COLON 15
  SKIP(1)
  OPE                COLON 15 LABEL "OPERACION"
WITH FRAME a SIDE-LABELS NO-ATTR-SPACE WIDTH 80.

REPEAT:
UPDATE A B OPE WITH FRAME a.

CASE OPE:
WHEN "SUMA"           THEN  DISPLAY "SUMA          "  A + B SKIP.
WHEN "RESTA"          THEN  DISPLAY "RESTA         " A - B SKIP.
WHEN "MULTI"          THEN  DISPLAY "MULTIPLICACION" A * B SKIP .
WHEN "DIVISION"       THEN  DISPLAY "DIVISION      "  A / B SKIP.
WHEN "MODULO"         THEN  DISPLAY "MODULO        "    A MOD B SKIP.
WHEN "RAIZ"           THEN  DISPLAY "RAIZ CUADRADA " SQRT(A) SKIP.
WHEN "EXPONENCIAL"    THEN  DISPLAY "EXPONENCIAL   "   EXP(A,B) SKIP.
WHEN "LOGARITMO"      THEN  DISPLAY "LOGARITMOS    "    LOG(A) SKIP.
OTHERWISE DISPLAY "OPCION INCORRECTA" SKIP.
END.

END.

Ejecución del programa Calculadora en Progress 4gl

Lectura de Datos, presentar Menú


Calculator in Progress 4gl
Resultado



Vieron que no fue complicado? No tengan miedo las matemáticas no lastiman (mucho jajaja) y solo es práctica y práctica, recuerdan el comentario al inicio del post imaginen el amigo mas honesto que tengan bueno no le dejan de hablar por esto o si?

No olvide compartirnos y seguirnos en este blog o en Facebook.

https://www.programacionparatodos.com

Comentarios

Entradas más populares de este blog

Graficar funciones en Python con dataframes

Bienvenidos a un nuevo post, en esta semana, en esta ocasión les quiero platicar acerca de una librería en Python que se llama  matplotlib  que nos sirve para gráfica funciones de  matemáticas. Habitualmente en Python existen muchas librerías, lo que hay que hacer es primero investigar si ya existe alguna que nos ayude y entenderla antes de inventar el hilo negro, en mi caso encontré la librería  Matplotlib Para instalar deben utilizar el comando PIP en 2.7 Instalando en Python 3.7 Si tienen Python 2.7 deben realizar la ejecución de estos 2 comandos desde consola python -m pip install -U pip python -m pip install -U matplotlib Aunque lo más recomendable es utilizar la versión 3.7 o superior de Python. Programa para graficar en Python import matplotlib.pyplot as plt import numpy as np import math as mt def move_spines():     """Esta funcion divide pone al eje y en el valor      0 de x para dividir claramente los valores positivos y     negativos.&quo

Ejemplo Macro en Word

Hola: ¿Sabían que no solo en Excel pueden hacer Macros?  ¡¡¡También en Outlook, Word, Power Point,Access  es posible hacer Macros!!!  ☺️ Ya que Word, Excel, Power Point,Access son de familia Microsoft y Visual Basic también es que podemos programar nuestras macros en esta paquetería. Como hemos visto antes, para poder programar nuestras macros, necesitamos primero configurar la Barra de tareas de Developer o Desarrollador Seleccionan el Menu File>Options>Customize Ribbon o en Español Archivo>Opciones>barra de tareas Despues la parte de seguridad de las macros Menu File>Options>Trus Center o Archivo>Opciones>Centro de Seguridad y marcamos como se ve en la imagen, la cuarta opción y el combo Ejemplo Vamos hacer un ejemplo donde, tengamos que generar varios diplomas de fin de curso, pero con una lista de Nombres , entonces vamos a crear un nuevo archivo en Word y le vamos a guardar como tipo Macro  Tenemos una plantill

Ejemplo Python para leer imagen y transformarla en una matriz

Como hemos visto en otros post, Python nos permite hacer programas de manera más rápida, en esta ocasión quiero compartirles un ejemplo para leer un archivo de imagen y como convertirlo en una matriz o un arreglo. Aplicaciones Poder hacer ingeniería de datos, es decir poder convertir una misma imagen en diferentes todos y utilizarlos para machine learning para reconocimiento de gatos, para ello hay que mostrar muchas imágenes a nuestro modelo es decir entrenarlo, para ello hay que colocarle imágenes claras y imagenes que no sean tan claras por ejemplo, se pone la imagen original y se agrega "ruido" para que se vea en rojos, grises, verdes. Se pudo utilizar para un mapa , para poder ver datos a detalle Se puede aplicar para manipular imágenes, por ejemplo agregar efectos  Seguramente a ustedes se les pueden ocurrir más aplicaciones Les comparto el ejemplo de como hacerlo en Jupiter y para hacer el ejemplo voy a utilizar el logo del blog es una imagen de 500x500 pixeles Los Pas