Calculadora de Resistencias Electricas
# Alumno: Juan Alberto Falcon Quezada
# Maestra: Dra. Ariadna Cardozo
# Proyecto: Graficadora y Calculadora de Resistencias Electricas
# Descripcion: Este programa captura colores de resistencias y calcula
# su valor ademas de graficar la resistencia que representa
# Fecha: 13-05-2018
#Librerias
from turtle import*
#Funciones Auxiliares
def DrawBar(t1, color):
t1.color(color)
t1.pendown()
# Dibujamos Primer barra de color
t1.begin_fill()
t1.left(90)
t1.forward(80)
t1.right(90)
t1.forward(20)
t1.right(90)
t1.forward(80)
t1.right(90)
t1.forward(20)
t1.end_fill()
t1.penup()
t1.right(180)
t1.forward(45)
t1.pendown()
def DrawPins(t):
t.penup()
t.goto(-100,0)
t.circle(40,-90)
t.left(90)
t.pensize(8)
t.color('black')
t.pendown()
t.backward(50)
t.penup()
t.goto(0,0)
t.circle(40,-90)
t.left(90)
t.forward(180)
t.pendown()
t.forward(50)
t.ht()
def DrawRes(DataRes):
#configuracion Tortuga
t=Turtle()
tt=Turtle()
t3=Turtle()
t.shape('turtle')
screen=t.getscreen()
screen.title('Calculadora de Resistencias')
# Dibujado de Resistencia
t.penup()
t.goto(-100,0)
t.pendown()
t.color('wheat')
t.begin_fill()
t.circle(40,-180)
t.backward(200)
t.circle(40,-180)
t.backward(200)
t.end_fill()
t.color('black')
t.penup()
t.goto(-100,0)
t.ht()
#Dibujamos las patas de la resitencia
DrawPins(t3)
tt.goto(-70,0)
#dibujamos las barras con colores
DrawBar(tt, DataRes[0])
DrawBar(tt, DataRes[1])
DrawBar(tt, DataRes[2])
DrawBar(tt, DataRes[3])
tt.ht()
# Salimos
screen.exitonclick()
def CalculaResistencia(data):
#diccionario para valores de tolerancia
tole = {0:1,1:2,2:5,3:10}
#calculamos el valor de la resistencia
rv = str(data[0])+str(data[1])
rv = int(rv)
rv = rv*(10**data[2])
tol = tole[data[3]]
#Retornamos una lista con el valor de la resistencia y la tolerancia
return [rv, tol]
def AskColors():
cols = {0:'black',1:'brown',2:'red',
3:'orange',4:'yellow',5:'green',
6:'blue',7:'violet',8:'grey',9:'white'}
tols= {0:'brown',1:'red',2:'gold',3:'silver'}
data_aux = ['negro', 'marron', 'rojo', 'naranja','amarillo','verde','azul','purpura','gris','blanco']
#Dibujamos los valores y colores de las resistencias
print('<- Colores de Resitencias ->')
for i in range(10):
print('[{}] {}'.format(i,data_aux[i]))
#Dibujamos las tolerancias
data_aux = ['marron', 'rojo', 'dorado', 'plateado']
print('\n\n<- Colores de Tolerancias ->')
for i in range(4):
print('[{}] {}'.format(i, data_aux[i]))
print('\n\n')
#Preguntamos por los colores
_aux=[] #contiene los valores con enteros
data_aux = [] #contiene los valores con strings
for i in range(4):
aux = int(input('Ingresa el color {}: '.format(i+1)))
if(aux > 9):
print('Valor Invalido. Ingresa Otro')
while(aux > 9):
aux = int(input('Ingresa el color {}: '.format(i+1)))
_aux.append(aux)
if(i>2):
data_aux.append(tols[aux])
print('elegido {} correspondiente {}'.format(aux,tols[aux]))
else:
data_aux.append(cols[aux])
print('\n\n')
print(data_aux[3])
#mandamos llamar a la funcion que calcula el valor de la resistencia
valores = CalculaResistencia(_aux)
#imprimimos los valores
print('Valor de la resistencia: {} ohms'.format(valores[0]))
print('Tolerancia: {}%'.format(valores[1]))
DrawRes(data_aux)
# Funcion Principal donde se llaman las funciones Auxiliares
def Main():
AskColors()
#Llamamos a la funcion principal
Main()
# Maestra: Dra. Ariadna Cardozo
# Proyecto: Graficadora y Calculadora de Resistencias Electricas
# Descripcion: Este programa captura colores de resistencias y calcula
# su valor ademas de graficar la resistencia que representa
# Fecha: 13-05-2018
#Librerias
from turtle import*
#Funciones Auxiliares
def DrawBar(t1, color):
t1.color(color)
t1.pendown()
# Dibujamos Primer barra de color
t1.begin_fill()
t1.left(90)
t1.forward(80)
t1.right(90)
t1.forward(20)
t1.right(90)
t1.forward(80)
t1.right(90)
t1.forward(20)
t1.end_fill()
t1.penup()
t1.right(180)
t1.forward(45)
t1.pendown()
def DrawPins(t):
t.penup()
t.goto(-100,0)
t.circle(40,-90)
t.left(90)
t.pensize(8)
t.color('black')
t.pendown()
t.backward(50)
t.penup()
t.goto(0,0)
t.circle(40,-90)
t.left(90)
t.forward(180)
t.pendown()
t.forward(50)
t.ht()
def DrawRes(DataRes):
#configuracion Tortuga
t=Turtle()
tt=Turtle()
t3=Turtle()
t.shape('turtle')
screen=t.getscreen()
screen.title('Calculadora de Resistencias')
# Dibujado de Resistencia
t.penup()
t.goto(-100,0)
t.pendown()
t.color('wheat')
t.begin_fill()
t.circle(40,-180)
t.backward(200)
t.circle(40,-180)
t.backward(200)
t.end_fill()
t.color('black')
t.penup()
t.goto(-100,0)
t.ht()
#Dibujamos las patas de la resitencia
DrawPins(t3)
tt.goto(-70,0)
#dibujamos las barras con colores
DrawBar(tt, DataRes[0])
DrawBar(tt, DataRes[1])
DrawBar(tt, DataRes[2])
DrawBar(tt, DataRes[3])
tt.ht()
# Salimos
screen.exitonclick()
def CalculaResistencia(data):
#diccionario para valores de tolerancia
tole = {0:1,1:2,2:5,3:10}
#calculamos el valor de la resistencia
rv = str(data[0])+str(data[1])
rv = int(rv)
rv = rv*(10**data[2])
tol = tole[data[3]]
#Retornamos una lista con el valor de la resistencia y la tolerancia
return [rv, tol]
def AskColors():
cols = {0:'black',1:'brown',2:'red',
3:'orange',4:'yellow',5:'green',
6:'blue',7:'violet',8:'grey',9:'white'}
tols= {0:'brown',1:'red',2:'gold',3:'silver'}
data_aux = ['negro', 'marron', 'rojo', 'naranja','amarillo','verde','azul','purpura','gris','blanco']
#Dibujamos los valores y colores de las resistencias
print('<- Colores de Resitencias ->')
for i in range(10):
print('[{}] {}'.format(i,data_aux[i]))
#Dibujamos las tolerancias
data_aux = ['marron', 'rojo', 'dorado', 'plateado']
print('\n\n<- Colores de Tolerancias ->')
for i in range(4):
print('[{}] {}'.format(i, data_aux[i]))
print('\n\n')
#Preguntamos por los colores
_aux=[] #contiene los valores con enteros
data_aux = [] #contiene los valores con strings
for i in range(4):
aux = int(input('Ingresa el color {}: '.format(i+1)))
if(aux > 9):
print('Valor Invalido. Ingresa Otro')
while(aux > 9):
aux = int(input('Ingresa el color {}: '.format(i+1)))
_aux.append(aux)
if(i>2):
data_aux.append(tols[aux])
print('elegido {} correspondiente {}'.format(aux,tols[aux]))
else:
data_aux.append(cols[aux])
print('\n\n')
print(data_aux[3])
#mandamos llamar a la funcion que calcula el valor de la resistencia
valores = CalculaResistencia(_aux)
#imprimimos los valores
print('Valor de la resistencia: {} ohms'.format(valores[0]))
print('Tolerancia: {}%'.format(valores[1]))
DrawRes(data_aux)
# Funcion Principal donde se llaman las funciones Auxiliares
def Main():
AskColors()
#Llamamos a la funcion principal
Main()
Comentarios
Publicar un comentario