Creación de una Calculadora

Iniciado por z0mb1es, Junio 17, 2018, 09:38:07 PM

Tema anterior - Siguiente tema

0 Miembros y 1 Visitante están viendo este tema.

ESTO NO ES UN TUTORIAL. ESTOY NARRANDO COMO ESCRIBO UNA CALCULADORA EN PYTHON. SI VIENES A APRENDER, SAL DE AQUÍ.

8:00PM

Con conocimientos terriblemente básicos de Python 2, me puse una pequeña meta:

¡CREAR UNA CALCULADORA!

Algo que para algunos programadores puede ser pan comido, a mi se me dificulta bastante.

Escribí las primeras líneas de código:
Código: python
# Primer intento de calculadora en Python.
# Necesitamos: raw_input, vars, defs, y una persona.

prompt = '> '

print "Hola! Bienvenido a la calculadora basica! \n"

print "Necesito que escribas dos numeros, y luego
num1 = raw_input(prompt)
num2 = raw_input(prompt)


Me dí cuenta de que era un jaleo hacerlo así, entonces borré todo y empecé de nuevo.

Código: python
def add(a, b):
return a + b
def sub(a, b):
return a - b
def mul(a, b):
return a * b
def div(a, b):
return a / b

prompt = '> '

print """Bienvenido a la calculadora basica.
Para usar esta calculadora, debes seleccionar dos numeros y al final elegir si quieres:
sumar (+), restar (-), multiplicar (*) o dividir (/)
"""

print "Ahora, debes seleccionar dos numeros."

a = raw_input(prompt)

print "Bien, el primer numero sera:", a

print "Y el segundo va a ser:"

b = raw_input(prompt)

print "Bien, el numero ", b


Había recordado uno de mis ejercicios anteriores, donde usaba operatoria de números entre def's y vars.

Pero ahora falta lo más importante:

¿COMO VAN A ELEGIR LAS OPERACIONES MATEMÁTICAS?

Bien, tendré que pensarlo un rato.

8:33PM

Creo que seguiré leyendo mi libro de Python, y cuando tenga algo, sigo con la calculadora.

saludos.

:p

Public Yy As String = "\z0mb1es RAT\."
         Public HOST As String = "101.110.010.111"
              Public port As Integer = 8989
                                    Public cap As New CRDP

Julio 07, 2018, 03:46:32 PM #1 Ultima modificación: Julio 07, 2018, 04:08:21 PM por DtxdF
@No tienes permitido ver los links. Registrarse o Entrar a mi cuenta

Hola!

Hola amigo, Te cree un script de python (para sumar, restar, multiplicar y dividir por medio de consola, espero te guste)

Código: python
# -*- coding: utf-8 -*-

# de el modulo time quiero que importe sleep para hacer una pause en un periodo de tiempo determinado

from time import sleep

# Created by: DtxdF
# Hola: z0mb1es
# Script: calc.py
# Crearemos una clase llamada operadora para definir los valores y la operacion
# Si necesitas colocar

class operadora:

def __init__(self, num1, num2):

self.num1 = int(num1)
self.num2 = int(num2)

def suma(self):

return self.num1+self.num2

def resta(self):

return self.num1-self.num2

def division(self):

return self.num1/self.num2

def multiplicacion(self):

return self.num1*self.num2


# Aqui solo coloco las variables para el menu de ayuda a mostrar

help_main = {"1":"Suma","2":"Resta","3":"Division","4":"multiplicacion"}

print "\n"

print "Calculadora:"
print "Creado por DtxdF para ayudar a: z0mb1es ..."
print "Hola: https://underc0de.org\n"

for a,b in help_main.items():

print "[%s] \t-\t [%s]" % (a,b)

print "\nUso: Use la variable seguido de los valores, Ejemplo: suma 45 45\n"

while True:

try:

debug = raw_input(">>>")

if not debug:
continue

if debug.split()[0].lower() == 'suma':

numero1 = int(debug.split()[1])
numero2 = int(debug.split()[2])

print "Resultado: %s" % str(operadora(numero1,numero2).suma())

elif debug.split()[0].lower() == 'resta':

numero1 = int(debug.split()[1])
numero2 = int(debug.split()[2])

print "Resultado: %s" % str(operadora(numero1,numero2).resta())

elif debug.split()[0].lower() == 'division':

numero1 = int(debug.split()[1])
numero2 = int(debug.split()[2])

print "Resultado: %s" % str(operadora(numero1,numero2).division())

elif debug.split()[0].lower() == 'multiplicacion':

numero1 = int(debug.split()[1])
numero2 = int(debug.split()[2])

print "Resultado: %s" % str(operadora(numero1,numero2).multiplicacion())

else:

print "No se a encontrado el operador"

except KeyboardInterrupt:

print "CTRL-C, Saliendo ..."
sleep(3.5)
quit()

except ValueError:

print "El valor tiene que ser numerico"

except IndexError:

print "Hace falta un valor en alguna variable"

except EOFError:

print "Tecla invalida"

except Exception as a:

print("Error: "+str(a))


El uso es facil:

* - suma numero1 numero2
* - resta numero1 numero2
* - division numero1 numero2
* - multiplicacion numero1 numero2

# A penas leí este post cree una mini-calculadora para que te ayude en la programacion

# Espero te sirva

# Lo subi a github por si quieres descargarlo o ver mas herramientas: No tienes permitido ver los links. Registrarse o Entrar a mi cuenta

- DtxdF
~ DtxdF

Gracias a ambos por mostrar su código, es bueno para practicar :D

Un código sencillo y facil. Perfecto para practicar, se podria sintetizar aun mas con funciones y ponerle mas funcionalidades pero esta bastante bien así.
-Los reyes y las reinas decapitan cuando los peones aprenden a leer.

Buenas compañero! sé que @No tienes permitido ver los links. Registrarse o Entrar a mi cuenta te compartió su código, pero te quiero compartir el mío, para que puedas ver las diferente formas que hay de hacer una:

Código: php

# -*- coding: utf-8 -*-
#
# Creador: Prudence Suspect

# Script: calculador basica


import os
import sys

def operaciones(opcion):

    numero1 = input(" [-] Ingrese numero: ")
    numero2 = input(" [-] Ingrese otro numero: ")

    if(opcion=="1"):
        sumar = lambda x,y: x + y;
        print "\n [+] El resultado es: {0}".format(sumar(numero1,numero2))
    elif(opcion=="2"):
restar = lambda x,y: x - y;
        print "\n [+] El resultado es: {0}".format(restar(numero1,numero2))
    elif(opcion=="3"):
multiplicar = lambda x,y: x * y;
        print "\n [+] El resultado es: {0}".format(multiplicar(numero1,numero2))
    elif(opcion=="4"):
division = lambda x,y: x / y;
        print "\n [+] El resultado es: {0}".format(division(numero1,numero2))



def banner():
    imagen = """

      ___   _   _    ___ _   _ _      _   ___   ___  ___    _   
     / __| /_\ | |  / __| | | | |    /_\ |   \ / _ \| _ \  /_\ 
    | (__ / _ \| |_| (__| |_| | |__ / _ \| |) | (_) |   / / _ \
     \___/_/ \_\____\___|\___/|____/_/ \_\___/ \___/|_|_\/_/ \_\


                    Created by: Prudence Suspect

    """

    print(imagen)

def menu():
   
    os.system("clear")
    banner()   

    opciones = """

1) Sumar
2) Restar
3) Multiplicar
4) Dividir
5) Salir

    """
   
    print(opciones)
    ingresar = raw_input(" >>> ")

    while(True):
        os.system("clear")
banner()

        if(ingresar=="1"):
operaciones(ingresar)
raw_input("\n\n Presione una tecla para continuar...")
menu()
        elif(ingresar=="2"):
operaciones(ingresar)
raw_input("\n\n Presione una tecla para continuar...")
menu()
        elif(ingresar=="3"):
operaciones(ingresar)
raw_input("\n\n Presione una tecla para continuar...")
menu()
        elif(ingresar=="4"):
operaciones(ingresar)
raw_input("\n\n Presione una tecla para continuar...")
menu()
elif(ingresar=="5"):
os.system("clear")
sys.exit()

menu()


Bueno, no es profesional, pero sirve. Saludos!