Calculadora de dos números
Vamos a construir una pequeña calculadora, de momento lo único que hará será sumar y restar dos números, luego en el siguiente programa, le añadirás más operaciones básicas.
Línea 21:
¡El programa empieza aquí! Justo al final de todo el código.
¿Es necesaria la función main()? Realmente no. Podríamos poner su contenido directamente, pero hace que el código esté más ordenado y algunos programadores profesionales suelen hacerlo así porque en otros lenguajes la función main() es obligatoria, aunque no es el caso de Python.
Líneas 14 a 18: Contienen la definición de main().
- Líneas 15 y 16. Piden al usuario los datos que se sumarán o restarán.
- Línea 17: Llama a la función calculadora() y guarda su resultado en una variable llamada operacion.
- Línea 18. Imprime el resultado devuelto por calculadora(). El programa acaba en esta línea.
Líneas 3 a 12. Definición de la función calculadora()
- Línea 4. Imprime en la consola el menú de nuestra calculadora con las dos opciones que tiene de suma y resta. No lo convierte a número con int o float porque no es necesario ya que no haremos operaciones con estos números.
- Línea 5. Comprueba si hemos escrito un "1". Se usan las comillas porque al no convertir a número lo que hemos escrito se tratará de un texto.
- Línea 6. Si hemos escrito un "1" (suma) devuelve el resultado de la suma.
- Línea 7 Comprueba si hemos escrito un "2".
- Línea 8. Si hemos escrito un "2" (resta) devuelve el resultado de la resta.
- Líneas 9 a 12. Estas líneas son para el caso de que no hayamos escrito ni "1" ni "2".
- Línea 10. Imprime un mensaje de error.
- Línea 11. La función se llama a sí misma otra vez para que el usuario pueda elegir otra vez entre "1" y "2". El resultado devuelto por la función se asigna a la variable r.
- Línea 12. Se devuelve el valor de r con el resultado.
Como vemos la función calculadora() tiene 3 respuestas diferentes según los datos introducidos por el usuario. En el caso de elegir suma, resta o de elegir una opción errónea. Cada una tiene su propio tratamiento.