jueves, 27 de septiembre de 2018

Unidad 2: While

While


Suma regresiva de del 50, 48, 46, 44, 42, ...20


#calcular la suma
n = 50
h = 0
while n >= 20:
    h += n
    n -= 2    
    print h
print h



Suma regresiva del 0 al 50

numeroin = 50
suma = 0

while numeroin >= 1:
    suma =suma + numeroin
    numeroin = numeroin -2
    print 'numero: ', numeroin
print 'suma: ', suma






Suma regresiva de del 50, 48, 46, 44, 42, ...20 con método.

def sumareg(numeroin, numerofin):
    
    suma = 0
    while numeroin >= numerofin:
      suma =suma + numeroin
      numeroin = numeroin -2
      print 'numero: ', numeroin
        
    print 'suma: ', suma


numeroin = int (input('Dame el numero inicial: '))
numerofin = int (input('Dame el numero final: '))
sumareg(numeroin, numerofin)







Suma de los números impares.

numeroin = 100
sumaimp = 0

while numeroin >= 1:
    residuo = numeroin % 2
    if residuo != 0:
        sumaimp =sumaimp + numeroin
    numeroin = numeroin - 1
print 'Suma de impares: ', sumaimp





Suma de los números impares con método.

def sumaimp(numeroin, numerofin):

    sumaimp = 0

    while numeroin >= 1:
        residuo = numeroin % 2
        if residuo != 0:
             sumaimp =sumaimp + numeroin
        numeroin = numeroin - 1
    print 'Suma de impares: ', sumaimp

numeroin = int (input('Dame el numero inicial: '))
numerofin = int (input('Dame el numero final: '))
sumaimp(numeroin, numerofin)






Suma de números impares con dos métodos, el primero para los parámetros de inicio y final, y el segundo para verificar si el numero inicial es mayor que el final.

def evaluar(numeroin, numerofin):
    if numeroin >=numerofin:
        sumaimp(numeroin, numerofin)
    else:
        print 'El numero inicial debe ser mayor que el final'
    
def sumaimp(numeroin, numerofin):
    sumaimp = 0

    while numeroin >= 1:
        residuo = numeroin % 2
        if residuo != 0:
             sumaimp =sumaimp + numeroin
        numeroin = numeroin - 1
    print 'Suma de impares: ', sumaimp

numeroin = int (input('Dame el numero inicial: '))
numerofin = int (input('Dame el numero final: '))
evaluar(numeroin, numerofin)
sumaimp(numeroin, numerofin)










miércoles, 26 de septiembre de 2018

Unidad 2: Ejemplo de While

Ejemplo de While y For

Programa que diga los números pares e impares con la condición While.

Código

def sacarimpar(numeroin, numerofin):
    i = numeroin
    while numeroin <= numerofin:
        residuo = numeroin % 2
        if residuo != 0 :
            print('numero impar', numeroin)
        else:
            print('El numero es par', numeroin)
        numeroin = numeroin + 1


numeroin = int (input('Dame el numero inicial: '))
numerofin = int (input('Hasta que numero saber impar: '))
sacarimpar(numeroin, numerofin)




def increment4(numeroin, numerofin):
    while (numeroin <= numerofin):
        print 'numero: ', numeroin
        numeroin += 4


numeroin = int (input('Dame el numero inicial: '))
numerofin = int (input('Dame el numero final: '))
increment4(numeroin, numerofin)





def increment4(numeroin, numerofin):
    i =numeroin
    for i in range(numeroin, numerofin, 4):
        print 'numero: ', i


numeroin = int (input('Dame el numero inicial: '))
numerofin = int (input('Dame el numero final: '))
increment4(numeroin, numerofin)






def sumanum (numeroin, numerofin):
    i =numeroin
    suma = 0
    while numeroin <= numerofin:
        numeroin = numeroin + 1
        suma = suma + numeroin
        #print suma
        
    print ('Suma: ')  , suma

numeroin = int (input('Dame el numero inicial: '))
numerofin = int (input('Dame el numero final: '))
sumanum(numeroin, numerofin)







martes, 25 de septiembre de 2018

Unidad 2: Ejemplo de for

Uso de FOR


Programa que imprime los número impar y par.


#imprime numero impares
def sacaimpar(numero):

        residuo = numero % 2
        if residuo != 0 :
            print ('numero impar', numero)

        else:
            print ('El numero es par', numero)


numero = int (input('Dame el numero inicial: '))
#fin = int (input('Hasta que numero saber impar: '))
sacaimpar(numero)




Programa que imprime numeros pares y impares. Uso de for.

#imprime numero impares
def sacarimpar(numeroin, numerofin):
    i = numeroin
    for i in range(numeroin,numerofin):
        residuo = numeroin % 2
        if residuo != 0 :
            print('numero impar', numeroin)
        else:
            print('El numero es par', numeroin)
        numeroin = numeroin + 1


numeroin = int (input('Dame el numero inicial: '))
numerofin = int (input('Hasta que numero saber impar: '))
sacarimpar(numeroin, numerofin)





jueves, 20 de septiembre de 2018

Unidad 2: Calculadora (Práctica uso de if)

Ejemplo Calculadora (usando if anidados )


import math

def salir(valor):
    while valor != 1 or valor != 2:
        if valor == 1:
            return 6
        elif valor == 2:
            return 9
        else:
            print("\nSeguro que desea salir? (1. yes /2.no)")
            valor = input()

def cal():
    opc = 0
    while opc != 6:
        print("\nBienvenidos a mi Calculadora prueba")
        print("Selecciona alguna opcion")
        print("1.Suma")
        print("2.Resta")
        print("3.Multiplicacion")
        print("4.Division")
        print("5.Raiz cuadrada")
        print("6.Salir")
        opc = int(input("Opcion: "))
        if opc == 1:
            print("\nSumas")
            num1 = input("\nIntroduzca un numero: ")
            num2 = input("Introduzca otro numero: ")
            print("El resultado es: " + str(num1 + num2))
        elif opc == 2:
            print("\nRestas")
            num1 = input("\nIntroduzca un numero: ")
            num2 = input("Introduzca otro numero: ")
            print("El resultado es: " + str(num1 - num2))
        elif opc == 3:
            print("\nMultiplicacion")
            num1 = input("\nIntroduzca un numero: ")
            num2 = input("Introduzca otro numero: ")
            print("El resultado es: " + str(num1 * num2))
        elif opc == 4:
            print("\nDivision")
            num1 = input("\nIntroduzca un numero: ")
            num2 = input("Introduzca otro numero: ")
            print("El resultado es: " + str(num1 / num2))
        elif opc == 5:
            num1 = input("\nIntroduzca un numero: ")
            print("La raiz cuadrada es: " + str(math.sqrt(num1)))
        elif opc == 6:
            print("\nSeguro que desea salir? (1. yes /2.no)")
            opc = salir(input())
        else:
            print("El valor introducido no es valido regresara al menu")

cal()
print("Adios")







Usar Debug:

Con debug ejecuta linea de código por linea por linea de código permitiendo ver que hace el programa.

Es necesario señalar que parte de código queremos utilizar el debug, dar click derecho donde empezaremos.



Ir a la barra de herramientas y dar click Run, nos muestra las siguientes opciones.
Damos click en Debug





Lo siguiente que nos mostrará sera consola (Console), ahi dar click en Step Over (F8).
Se ejecutara instrucción de la lineas de código











#ejemplo de programa de if anidados(práctica)

import math

def calculo():
    opc2 = 1
    while opc2 != 0:
        opc = 0
        print 'Menu de opciones'
        print 'Seleccione la opcion\n'
        print '1.- Determinar si el numero es par'
        print '2.- Sacar Seno y Coseno de dos numeros'
        print '3.- Sacar logaritmo de un numero'
        print '4.- Salir'
        opc = int(input('de la opcion: '))

        if opc == 1:
            print 'Dame el valor: ===>'
            valor = int(input())
            residuo = valor % 2
            if residuo == 0:
                print 'El numero es par'
            else:
                print 'El numero es impar'

        elif opc == 2:
            # print '\nDame un valor: '
            valor1 = int(input('Dame un valor: '))
            # print '\nDame el segundo valor: '
            valor2 = int(input('Dame el segundo valor: '))
            sen1 = math.sin(valor1)
            sen2 = math.sin(valor2)
            cos1 = math.cos(valor1)
            cos2 = math.cos(valor2)
            print 'seno del valor 1: ', sen1
            print 'seno del valor 2: ', sen2
            print 'coseno del valor 1: ', cos1
            print 'coseno del valor 2: ', cos2

        elif opc ==3:
            valor1 = int(input('Dame un valor para log : '))
            log = math.log10(valor1)
            print 'El resultado de logaritmo es: ', log

        else:
            opc2= 0


calculo()
print  'Termina el programa'



 

Unidad 2: Tarea: programas básicos

Tarea


Promedio de tres números y mostrar si aprobó o no acredito.


#obtener el promedio de tres calificaciones y desplegar "aprobado" y no si no "no acreditado"
import time
print "ingrese su nombre: "
nombre = (raw_input())

print "ingrese calificacion 1: "
c1 = int (raw_input())

print "ingrese calificacion 2: "
c2 = int (raw_input())

print "ingrese calificacion 3: "
c3 = int (raw_input())

p = (c1+c2+c3)/3
if p>= 70:
    print "Aprobado " , p
else:
    print "No aprobado ", p





print "calcular el area y perimetro de un circulo"
print "Ingresar radio: "
r = float(input())
a =(r*r)*3.1416
p =(2*3.1416)*r
print " El area es: ", a
print " El perimetro es: ", p




import random
print "NUMERO AL AZAR 1-10"
print (random.randrange(1,10))




Unidad 2: Sentencias básicas de Python

Sentencias básicas de Python



Operaciones básicas


Programa que al ingresar dos valores (entrada)no muestra (salida) el resultado del log.



import time
from math import *

print "Ingresa un primer valor: "
x = int (input(""))

print "Ingresa un segundo valor: "
y = int  (input(""))

a = log( x + y )
print "el resultado es:  ", a
time.sleep(5)





Programa que nos da el factorial de 10.


#Funciones aritmeticas

import math
a = 10

print math.factorial(a)
print math.ceil(a)



Programa que suma dos valores ingresados.

import time
#program  que sume valores
print "Ingrese un primer valor: "
a = int (input(""))

print "Ingrese un segundo valor: "
b = int (input(""))

suma = a + b
time.sleep(5)

print  "Suma de valores ingresados: "
print (suma)




Condicionales

Sintaxis

if  #condicion#:
            #Instrucciones
else:
            #Instrucciones

ó

if  #condicion#:
            #Instrucciones
elif:
            #Instrucciones(anidados)
else:
            #Instrucciones


Programa que mostrará al "ingresar su nombre" login, si se introduce el correcto(if), la condición se cumple se mostrara "Es usted administrador", en caso contrario, "No tiene acceso". 



#Ejemplo de if

import time
print "Ingrese su nombre: "
nombre =raw_input()

if nombre == "gris":
    print ("Es usted administrador")
else:
    print ("No tiene acceso")

#Recurrimos  a la funcion raw input, esta funcion
# hara que Python almacene lo que sea dentro de String







import time

print " PROGRAMA QUE USA IF"
print "Ingrese su nombre: "
nombre = raw_input()
print  " cargando password"
time.sleep(1)

print "*"
print "**"
time.sleep(3)
print "***"
time.sleep(4)
print "****"
time.sleep(5)
print "****"
print "carga completada 100%"

if nombre =="gris":
    print "Es usted administrador"
else:
    print "No eres el usuario Root"
time.sleep(5)






Programa que al introducir un numero nos dirá si es numero par o impar.


#Introducir un numero por teclado y decir si es par
#o impar
a = input('Introduzca un numero: ')
if a%2 == 0:
    print 'Este numero es par '
else:
    print 'Este numero es impar'






Programa que convertirá de un numero de decimal a binario.



#Programa conversion decimal a binario

import time
print "PROGRAMA DE CONVERSION DE DECIMAL A BINARIO"
print "INGRESE EL NUMERO A CONVERTIR =====>"
time.sleep(2)
a = input()
b = bin(a)
print (b)
time.sleep(3)








# encoding: utf-8
edad = 30

if edad >= 0 and edad < 18:
    print("eres un niño")
elif edad >= 18 and edad < 27:
    print "eres un joven"
elif edad >= 27 and edad < 60:
    print("eres un adulto")
else:
    print ("Eres de la tercera edad")




Unidad 2: Dibujando en Python

Dibujando en Python (Tkinter, canvas)

Figura de Angry Birds
Se utilizo polígono, y óvalos para crear.

#Código par dibujo
from Tkinter import *


def poligono(ventana):
    panel = Canvas(width=500, height=450, bg="gray")
    panel.pack()
    # cara
    panel.create_polygon(200,80, 120, 240, 120, 260, 140, 300, 160, 310, 240, 310, 310, 290, 350, 280, 360, 250, 350, 230,
                         340, 210,250, 80,
                         width=1, fill="yellow", outline="black")
    #cejas
    panel.create_polygon(150, 190, 142, 200, 175, 225, 185, 210, width=1, fill="black", outline="black")
    panel.create_polygon(200, 210, 210, 220, 248, 205, 240, 190, width=1, fill="black", outline="black")
    #boca
    panel.create_polygon(150, 250, 150, 260, 185, 255, 170, 263,
                         173, 275, 205, 263, 200, 240, width=2, fill="orange", outline="black")
    #ojos
    panel.create_oval(210, 215, 255, 235, width=1, fill="white", outline="black")
    panel.create_oval(140, 218, 175, 235, width=1, fill="white", outline="black")
    #pupilas
    panel.create_oval(215, 215, 235, 235, width=1, fill="black", outline="black")
    panel.create_oval(140, 218, 160, 235, width=1, fill="black", outline="black")
    #cabello
    panel.create_polygon(200, 80, 210, 75, 210,60, 220, 50, 220, 70, 230, 50, 240, 50,
                         240, 60, 230, 70, 255, 65, 260, 70, 240, 78,
                         260, 80,230, 88, width=1, fill="black", outline="black")

ventana = Tk()
ventana.title("Poligonos")
ventana.config(bg="gray")
ventana.geometry("600x600")
boton = Button(ventana, text="Crear Poligono", command=lambda: poligono(ventana))
boton.pack()
ventana.mainloop()







CREANDO: 
Dibujo de Plantas vs Zombies: Girasol y Hongo 

Girasol

En la girasol se uso polígono, óvalos y arcos.Al dibujar con create_arc podemos cambiar el estilo de la figura, tenemos tres disponibles, style = PIESLICE, este es el asignado por defecto, así como CHORD en el que dibuja una linea recta que conecta los puntos finales del arco, y por ultimo tenemos ARC para dibujar solo el borde del de la rebanada, se establece con start y el angulo final sera la suma del angulo de inicio más el valor establecido por extent, ambos grados.

extent : anchura de la rebanada en grados
start :Angulo de inicio

from Tkinter import *
#codigo para girasol
def poligono(ventana):
    panel = Canvas(width=500, height=450, bg="skyblue")
    panel.pack()
    # cara
    panel.create_oval(120, 80, 320, 200,  width=2, fill="chocolate", outline="black")

    #ojos
    panel.create_oval(180, 100, 200, 130, width=1, fill="black", outline="black")
    panel.create_oval(240, 100, 260, 130,  width=1, fill="black", outline="black")

    #pupila
    panel.create_oval(185, 105, 190, 115, width=1, fill="white", outline="black")
    panel.create_oval(245, 105, 250, 115, width=1, fill="white", outline="black")

    #boca
    panel.create_arc(170, 140, 270, 180, extent = 180, style = CHORD ,start = 180, width=2, fill="black", outline="black")

    #sonrisa rosybrown
    panel.create_arc(155, 145, 190, 160, extent = 100, style = ARC, start = 180, width=2, fill="black", outline="black")
    panel.create_arc(255, 145, 290, 160, extent = 100, style = ARC, start = 255, width=2, fill="black", outline="black")
    panel.create_oval(195, 170, 245, 180,  width=2, fill="pink2", outline="black")

    #Petalos
    panel.create_arc(200, 30, 240, 130, extent = 180, start = 0, style = CHORD , width=2, fill="yellow2", outline="black")
    panel.create_arc(240, 40, 280, 130, extent = 180, start = 353, style = CHORD , width=2, fill="yellow2", outline="black")
    panel.create_arc(275, 58, 315, 145, extent = 185, start = 340, style=CHORD, width=2, fill="yellow2", outline="black")
    panel.create_arc(255, 100, 365, 140, extent = 190, start = 280, style=CHORD, width=2, fill="yellow2", outline="black")
    panel.create_arc(260, 130, 360, 170, extent = 180, start = 268, style=CHORD, width=2, fill="yellow2", outline="black")
    panel.create_arc(245, 200, 360, 165, extent = 220, start = 225, style=CHORD, width=2, fill="yellow2", outline="black")
    panel.create_arc(255, 163, 295, 233, extent=215, start=178, style=CHORD, width=2, fill="yellow2", outline="black")
    panel.create_arc(225, 155, 265, 245, extent=190, start=180, style=CHORD, width=2, fill="yellow2", outline="black")
    panel.create_arc(170, 155, 215, 245, extent=190, start=170, style=CHORD, width=2, fill="yellow2", outline="black")
    panel.create_arc(135, 158, 175, 233, extent=210, start=150, style=CHORD, width=2, fill="yellow2", outline="black")
    panel.create_arc(80, 155, 192, 195, extent=198, start=105, style=CHORD, width=2, fill="yellow2", outline="black")
    panel.create_arc(65, 120, 172, 160, extent=193, start=84, style=CHORD, width=2, fill="yellow2", outline="black")

    panel.create_arc(128, 50, 168, 133, extent=200, start=10, style=CHORD, width=2, fill="yellow2", outline="black")

    panel.create_arc(80, 83, 170, 123, extent=233, start=35, style=CHORD, width=2, fill="yellow2", outline="black")
    panel.create_arc(160, 40, 200, 125, extent=190, start=2, style=CHORD, width=2, fill="yellow2", outline="black")

    #tallo
    panel.create_polygon(210, 200, 210, 250, 220, 290, 235, 330, 230, 380, 230, 410,
                         245, 410, 245, 380, 250, 330, 235, 290, 225, 250, 225, 200,  width=1, fill="forestgreen", outline="black")
    #hoja derecha
    panel.create_arc(230, 250, 310, 300, extent = 270, start = 0, style=CHORD, width=2, fill="forestgreen", outline="darkgreen")
    panel.create_arc(230, 265, 300, 295, extent=105, start=75, style=ARC, width=2, outline="darkgreen")
    #hoja izquierda
    panel.create_arc(125, 250, 215, 300, extent=270, start=270, style=CHORD, width=2, fill="forestgreen", outline="darkgreen")
    panel.create_arc(130, 265, 215, 295, extent=105, start=0, style=ARC, width=2, outline="darkgreen")

    #fondo derecho
    panel.create_arc(245, 300, 360, 410, extent=180, start=0, style=CHORD, width=1, fill="darkgreen", outline="black")
    panel.create_arc(245, 325, 380, 440, extent = 170, start = 0, style=CHORD, width=2, fill="forestgreen", outline="darkgreen")
    panel.create_arc(240, 340, 365, 460, extent=105, start=35, style=ARC, width=2, fill="forestgreen", outline="darkgreen")
    #fondo izquierdo
    panel.create_arc(115, 310, 235, 400, extent=195, start=345, style=CHORD, width=1, fill="darkgreen", outline="black")
    panel.create_arc(105, 340, 235, 470, extent=170, start=20, style=CHORD, width=2, fill="forestgreen", outline="darkgreen")
    panel.create_arc(135, 350, 240, 490, extent=130, style=ARC, start=8, width=2, fill="black", outline="darkgreen")
    #fondo medio
    panel.create_arc(185, 345, 350, 500, extent = 180, start = 0, style=CHORD, width=2, fill="forestgreen", outline="darkgreen")
    panel.create_arc(185, 365, 315, 500, extent = 130, style = ARC, start = 40, width=2, outline="darkgreen")

ventana = Tk()
ventana.title("Poligonos")
ventana.config(bg="gray")
ventana.geometry("600x600")
boton = Button(ventana, text="Crear Poligono", command=lambda: poligono(ventana))
boton.pack()
ventana.mainloop()



Girasol (PvZ)



Hongo

Figuras create_ oval, polygon y arc.

from Tkinter import *
#codigo para hongo
def poligono(ventana):
    panel = Canvas(width=600, height=800, bg="linen")
    panel.pack()
    # cara
    panel.create_polygon(200, 300, 200, 450, 210, 470, 390, 470, 400, 450, 400, 300, width=2, fill="lemonchiffon", outline="black")
    #cabeza
    panel.create_arc(100, 80, 500, 520, extent = 180, start = 0, style = CHORD , width=2, fill="gold", outline="black")
    #manchas

    panel.create_oval(290, 100, 380, 140, width=1, fill="goldenrod", outline="khaki")#1
    panel.create_oval(170, 110, 275, 190, width=1, fill="goldenrod", outline="khaki")  #2
    panel.create_oval(130, 220, 180, 270, width=1, fill="goldenrod", outline="khaki")#3
    panel.create_oval(210, 200, 300, 290, width=1, fill="goldenrod", outline="khaki")#4
    panel.create_oval(320, 160, 350, 210, width=1, fill="goldenrod", outline="khaki")#5
    panel.create_oval(325, 235, 375, 275, width=1, fill="goldenrod", outline="khaki")#6
    panel.create_oval(390, 140, 465, 285, width=1, fill="goldenrod", outline="khaki")#7


    #ojos
    panel.create_oval(240, 320, 270, 390, width=1, fill="black", outline="black")
    panel.create_oval(330, 320, 360, 390, width=1, fill="black", outline="black")
    #pupila
    panel.create_oval(245, 325, 265, 355, width=1, fill="white", outline="black")
    panel.create_oval(335, 325, 355, 355, width=1, fill="white", outline="black")
    #boca
    panel.create_arc(260, 390, 340, 440, extent = 180, style = ARC, start = 180, width=2, fill="black", outline="black")

ventana = Tk()
ventana.title("Poligonos")
ventana.config(bg="gray")
ventana.geometry("600x600")
boton = Button(ventana, text="Crear Poligono", command=lambda: poligono(ventana))
boton.pack()
ventana.mainloop()







miércoles, 19 de septiembre de 2018

Unidad 2: Ejemplo : Editor con estilo

Editor con estilo


 Ir al blog en tema y seleccionar Editar HTML





Copiamos el siguiente código debajo de <head> :















Lo siguiente es dirigirnos a una entrada donde queremos que se vea el código del programa, con el siguiente código en la entrada dirigirnos a HTML.




#
<pre class="brush: python">
#Aqui insertamos el codigo
</pre>

Resultado
Ejemplo:


# -*- coding: utf-8 -*-import Tkinter as tk
from Tkinter import *
ventana = Tk()
ventana.geometry('400x400')
ventana.config(bg="black")
ventana.title("Mostrando y ocultando un botón con una imagen")

def btn_hide():
    if b1.winfo_ismapped():
        b1.place_forget()
        b2.configure(text="Mostrar carita", width=15)
    else:
        b1.place(x=70, y=50)
        b2.configure(text="Ocultar carita", width=15)

imgBoton = PhotoImage(file="pensando.gif")
b1 = tk.Button(ventana, text="Botón 1", image=imgBoton, fg="black", width=200)
b1.place(x=90, y=50)
b2 = Button(ventana, text="Ocultar carita", command=btn_hide, fg="black", width=15)
b2.place(x=130, y=280)

ventana.mainloop()

martes, 18 de septiembre de 2018

Unidad 2: Tinta con mouse

Tinta con mouse en Pycharm

Código

       
from Tkinter import *

ancho = 500
alto = 150


def paint(event):
    x1, y1 = (event.x -1),(event.y -1)
    x2, y2 = (event.x +1),(event.y +1)
    panel.create_oval(x1, y1, x2, y2, fill ='red')

def borrartodo():
    panel.delete('all')




master = Tk()
master.title('pinta con el mouse')

panel = Canvas(master, width = ancho, height = alto)
panel.pack(expand = YES, fill =BOTH )
panel.bind("", paint)

mensaje = Label(master, text = 'presione o arrastre con el mouse')
mensaje.pack(side = BOTTOM)

boton = Button(master, text ='borrar', command = borrartodo)
boton.pack(side = BOTTOM)

master.mainloop()
       


Programa Tinta con mouse  (TintaconMouse.py)






Ejecutar



Ventana


Probar (presionar o arrastrar con el mouse)