Monday, 24 April 2017
Sumadora integer (vpython)

Sumadora integer (vpython)

Sumadora integer
El objetivo de este archivo es ilustrar la utilización de los botones de python visual, en donde se utilizan los comandos básicos de python para realizar concatenamientos de string, alterando el texto contenido en un botón que servirá de pantalla.
Es importante recalcar uso de las variables globales, las cuales guardarán un valor que puede ser utilizado en diferentes partes del programa.

Diagrama de flujo de sumadora integer
#******* Inicio*****************************
from visual import *
from visual.controls import *
#  definicion de los manejadores de los eventos
def change(pantalla, dato):
        pantalla.text = dato

def change1(dato):
    global d
    if d==1:
        change(pantalla,"")
        d=0
    dato=pantalla.text +"2"
    change(pantalla,dato)

def change2(dato):
    global d
    if d==1:
        change(pantalla,"")
        d=0
    dato=pantalla.text +"1"
    change(pantalla,dato)

dato = ""
global d
d=0
def suma():
    global dato1
    if pantalla.text=="":
        dato1=0
    else:
        dato1= int(pantalla.text)
    pantalla.text=""   
    return dato1
def igual(dato1):
    global d
    if pantalla.text=="":
        pantalla.text="0"

    try:
        d=1
        if pantalla.text=="":
            pantalla.text ="0    "       
        else:
            sum= dato1 + int(pantalla.text)   
        pantalla.text = str(sum)   
    except:
        pantalla.text = ""   
def corrija():
    pantalla.text=""   
c = controls(title="Sumadora integer", width=600, height =600) # Create controls window

pantalla= button( pos=(-20,60,0), width=240, height=60,  text='', color=color.white )
# Create a button in the controls window:
b = button( pos=(-60,-10), width=50, height=50, text='2', action=lambda: change1(dato), color = color.yellow)
e = button( pos=(0,-10), width=50, height=50,   text='1', action=lambda: change2(dato) , color=color.blue)
f = button( pos=(-50,-75), width=60, height=40,   text='Suma',border=1, action=lambda: suma() , color=color.green)
g = button( pos=(60,-40), width=60, height=120,   text='=',border=1, action=lambda: igual(dato1) , color=(0.9,0.9,0.9))

h = button( pos=(5,-80), width=40, height=30,   text='Corregir',border=1, action=lambda: corrija() , color=(0.6,0.4,0.5))
#*********************************************************               
while 1:
    rate(5)
    c.interact() # Check for mouse; drive actions

#************************************
*******








{backbutton}