Curso de programación

Suma, resta, multiplicación y división

Capítulo 16: Operaciones aritméticas con PSeInt

Es el momento de empezar a estudiar matemáticas junto con el código, ya que es una parte fundamental. No te preocupes si no sabes mucho. Te enseñaré todo lo necesario para que puedas seguir todos los módulos del curso.

Aprender matemáticas con programación

En este capítulo, vas a ver como hacer una mini calculadora de operaciones aritméticas de suma, resta, multiplicación y división con dos números pasados como entradas.
Es decir, haremos cuatro algoritmos, uno para cada operación. Estos, le pedirán al usuario dos números para hacer cada operación y le devolverán en una salida de la consola el resultado.

Las operaciones aritméticas son acciones matemáticas que se realizan sobre números para obtener un resultado. Operaciones tales como la suma, la resta, etc.

Puede parecer complicado, pero casi todo, ya lo sabes hacer.

Algoritmo de operación aritmética de suma

Empecemos por la suma. Lo primero, es crear dos variables para guardar los dos números que van a utilizarse en la operación:

Algoritmo suma
	// Variables del algoritmo
	Definir numero1 como Entero
	Definir numero2 como Entero
	Definir resultado como Entero
FinAlgoritmo

Otra cosa que puedes hacer para declarar o definir varias variables del mismo tipo a la vez, es esta:

Definir numero1, numero2, resultado como Entero

Utiliza la forma que quieras.

En programación, la acción de definir o declarar varias variables a la vez se conoce como declaración múltiple. Entre otras formas de denominarlo.

Los valores, los he dejado inicialmente en 0. Recuerda que las variables no se pueden dejar sin valor en PSeInt.

Ahora, le pedimos al usuario que introduzca el primer número y luego el segundo. Para ello, necesitas dos comandos Escribir y dos Leer.

Algoritmo suma
	// Variables del algoritmo
	Definir numero1 como Entero
	Definir numero2 como Entero
	Definir resultado como Entero
	
	// Solicitudes de números
	Escribir "Por favor, introduzca el primer número a sumar:"
	Leer numero1
	Escribir "Por favor, introduzca el segundo número a sumar:"
	Leer numero2
FinAlgoritmo

Con esto, habremos conseguido almacenar los dos números del usuario, sin embargo, nos falta realizar la operación de suma con ellos y luego, mostrársela al usuario. Para hacer esto, hay que crear una tercera variable. En ella, haremos la operación de suma con el operador +:

Algoritmo suma
	// Variables del algoritmo
	Definir numero1 como Entero
	Definir numero2 como Entero
	Definir resultado como Entero
	
	// Solicitudes de números
	Escribir "Por favor, introduzca el primer número a sumar:"
	Leer numero1
	Escribir "Por favor, introduzca el segundo número a sumar:"
	Leer numero2
	
	// Calcula el resultado de la suma
	resultado <- numero1 + numero2
	
	// Muestra el resultado de la suma
	Escribir "El resultado de la suma entre ", numero1, " + ", numero2, " es igual a ", resultado, "."
FinAlgoritmo

Para que te salga la frase final (línea 17) como la mía, fíjate bien en los espacios que dejo en los strings.

Ejecución del algoritmo de suma

El resultado, es este. Puedes ejecutar el algoritmo todas las veces que quieras e ir probando diferentes números. Ya has creado un algoritmo capaz de hacer cálculos matemáticos.

Sumar en PSeInt

Diagrama de flujo del algoritmo de suma

Este diagrama ya se ve mucho más complejo que los que hemos visto hasta ahora.

Diagrama de algoritmo de suma con PSeInt

Si te fijas, también aparecen los comentarios. Si quieres que no aparezcan en el diagrama puedes activarlos/desactivarlos con este botón:

Comentarios PSDraw

A partir de aquí, no mostraré todos los diagramas. Puedes consultarlos en PSeInt por tu cuenta. Si que pondré alguno cuando sea necesario explicar cosas nuevas.

Problemas con los tipos de datos

En programación, lidiamos constantemente con problemas relacionados con los tipos de datos que admiten las variables. En Python, al asignar un valor a una variable, esta se convierte en variable de ese tipo, sin que tengamos que indicarlo en el código.
En PSeInt y en muchos lenguajes de programación, hay que especificar el tipo de dato de las variables.
Mira el código. Las variables están definidas como enteros. Eso quiere decir, que solo pueden guardar valores enteros. Si hacemos una suma con decimales, nos dará error:

Error 313 por tipo de dato en PSeInt

Puedes ver que el error indica que se ha producido en la línea 8. Se ha producido justamente en la primera entrada de datos Leer.

El error indica que el valor a ingresar, debe ser un entero y le hemos dado un decimal.

En casi todos los lenguajes de programación, se escribe el punto decimal con el símbolo punto (.), no con una coma. De hecho, PSeInt no es la excepción. En la imagen de abajo, puedes ver el error que se produce al hacerlo:

Error por coma decimal en PSeInt

El tipo de dato Real de PSeInt

En este caso, hay que utilizar el tipo de dato Real de PSeInt en la declaración de las variables.
Este tipo de dato, admite números enteros y decimales.
Seguro que quieres que tu algoritmo acepte cualquier número, así es más perfecto y tiene mayor funcionalidad.

Hay que poner Real en las tres variables, ya que el resultado almacenará decimales también.

Definir numero1 Como Real
Definir numero2 Como Real
Definir resultado Como Real

Ya podemos utilizar tanto decimales como enteros:

Tipo de dato Real de PSeInt
En Python, el tipo Entero se podría decir que es equivalente a su tipo int y el Real al tipo float.

Algoritmo de operación aritmética de resta

El siguiente algoritmo que haremos, será el de resta. Será lo mismo, pero realizará restas. Simplemente, copia todo el algoritmo de suma en un archivo nuevo. Los cambios, los tienes marcados en este código:

Algoritmo resta
	// Variables del algoritmo
	Definir numero1 Como Real
	Definir numero2 Como Real
	Definir resultado Como Real
	
	// Solicitudes de números
	Escribir "Por favor, introduzca el primer número a restar:"
	Leer numero1
	Escribir "Por favor, introduzca el segundo número a restar:"
	Leer numero2
	
	// Calcula el resultado de la resta
	resultado <- numero1 - numero2
	
	// Muestra el resultado de la resta
	Escribir "El resultado de la resta entre ", numero1, " - ", numero2, " es igual a ", resultado, "."
FinAlgoritmo

En las líneas 8 y 10 he cambiado la palabra mostrada sumar por restar. En la línea 14, he cambiado el operador de suma (+) por el de resta (-). En la línea 17, he cambiado el texto para que concuerde con el algoritmo.

Algoritmo de operación aritmética de multiplicación

El operador para realizar multiplicaciones es por norma general el asterisco (*). Aquí puedes ver como sería un algoritmo de multiplicación:

Algoritmo multiplicacion
	// Variables del algoritmo
	Definir numero1 Como Real
	Definir numero2 Como Real
	Definir resultado Como Real
	
	// Solicitudes de números
	Escribir "Por favor, introduzca el primer número a multiplicar:"
	Leer numero1
	Escribir "Por favor, introduzca el segundo número a multiplicar:"
	Leer numero2
	
	// Calcula el resultado de la multiplicación
	resultado <- numero1 * numero2
	
	// Muestra el resultado de la multiplicación
	Escribir "El resultado de la multiplicación entre ", numero1, " * ", numero2, " es igual a ", resultado, "."
FinAlgoritmo

Algoritmo de operación aritmética de división

Para finalizar, veamos el algoritmo de división. El operador utilizado para este propósito, es la barra (/).

Algoritmo division
	// Variables del algoritmo
	Definir numero1 Como Real
	Definir numero2 Como Real
	Definir resultado Como Real
	
	// Solicitudes de números
	Escribir "Por favor, introduzca el primer número a dividir:"
	Leer numero1
	Escribir "Por favor, introduzca el segundo número a dividir:"
	Leer numero2
	
	// Calcula el resultado de la división
	resultado <- numero1 / numero2
	
	// Muestra el resultado de la división
	Escribir "El resultado de la división entre ", numero1, " / ", numero2, " es igual a ", resultado, "."
FinAlgoritmo

Si estuvieras ya haciendo programas completos, con estos cuatro algoritmos, ya podrías construir una mini calculadora que le dejase elegir al usuario la operación que quiere realizar. Por el momento, aún no da para eso con lo que hemos dado. Sin embargo, al finalizar este módulo, serás capaz de hacerlo.

No confundas el operador de división ( / barra) con la contrabarra ( \ ).
Barra invertida o contrabarra en inglés se dice "backslash".

Anterior Siguiente

Comentarios

Si te quedan dudas sobre el temario, sobre Programación, PseInt, Python o cualquier otra cosa relacionada o simplemente quieres agradecer, aquí tienes tu sitio para dejar tu granito de arena. Gracias por tus comentarios y por darle vida a este sitio web.

Programación Fácil YouTube

Suscríbete

Si te ha gustado este curso y crees que el trabajo merece la pena, te agradeceré eternamente que te suscribas a mi canal de YouTube para apoyarme y que pueda seguir haciendo cursos gratuitos.

Además, si te encanta la programación, tienes un montón más de cursos gratuitos para ver.

No solo eso, podrás participar enviándome comentarios con tus sugerencias para temas específicos o cursos completos o incluso las dudas que tengas y las intentaré ir resolviendo en los cursos que estén todavía abiertos.