Unidad 3

Programa 1:

#Estructuras de control

edad=12

let="Si se pudo"

#if palabra reservada condicional : identificación

if edad>18:

        print(let)

        print("Todo dentro de if es entonces")

        print("Hasta salir de la identacion")

else: #Palabra reservada y : identacion

print("Dentro del else")

print("Hasta salir de la identacion del else")        

        

        

print("Lo que sigue del if")


Programa 2:

#Estructuras de control

edad=int(input("Dame tu edad: "))

if edad >=18:

print("Ya te pueden meter a la  carcel")

print("no tengo INE")

print("Ni licencia o algo mas...;) ")

else:

print("Pues se feliz entonces ")


print("Sigue el programa")


Programa 3:

edad=int(input("Tu edad es? "))

if edad>=18: print ("Si entras al antro");print("bebé -")

print("Sigue....")


if edad<18:

print("algo")

else: 

pass

#pass no hace nada, solo deja feliz al interprete 

Programa 4:

#else if

n=int(input("Dame un numero: "))

if n==1:

print("primero")

elif n==2:

print("Segundo")

#else:

#    print("¿Será? ")

elif n==3:

print("tercero")

else:

print("default")

print("continua el programa")


Programa 5:


'''

pedir la edad, lo clasifican en no nato <1, bb 1<>3,

niño 4<>12, adolescentes 13<>17, adulto 18<>65,

tercera edad 66 en adelante.



if n>5 and n<3

if n<0 & n>8

'''


edad=int(input("Dame la edad: "))

if edad<1:

print("No nacido")

if edad>=1 and edad<3:

print("bebé")


if edad>=4 and edad<12:

print("es un niño")

if edad>=13 and edad<17:

print("adolescente")


if edad>=18 and edad<65:

print("adulto")


if edad>=66 and edad <99:

print("adulto de la tercera edad")

if edad>=100:

print("muerto")


Programa 6:

#Ternario

var=int (input("Dame un numero:"))


print(var, type (var))

print("Es 8"if var==8 else "No es 8")

#Codigo se cumple if condicion else codigo no se cumple


Programa 7:

#Ternario que se atrape en una variable

var1= int(input("Dame el primer numero: "))

var2= int(input("Dame el segundo numero: "))

var3=var1/var2 if var2!=0 else-1

print(var3)

print(6/0)


Programa 8:

#programa que capture solo números sin el int del input


var1 = input("Dame un número: ")  

print(var1) 


print("Número válido:", var1) if var1.isdigit() else print("No es un numero.")


Programa 9:

#pedir la edad, lo clasifican en no nato <1, bb 1<>3,

#niño 4<>12, adolescentes 13<>17

#13 de marzo del 2025


print ("Cristal  Cruz Cruz: ") 

print(chr(128049))


edad = int(input("Ingresa la edad: "))

etapa= ( "No nato o no nacido" if edad < 1 else "bebe" if 1 <= edad < 3 else "Niño" if 4 <= edad < 12 else "Adolescente" if 13 <= edad < 17 else "Adulto")


print("La clasificación de edad es:", etapa)


Programa 10:

edad=input("Introduce tu edad: ")

a=5

c= ("no nato" if a<1 else "bebe" if a>=3 and a<1 else "no es un bebe", )

print(c)


Programa 11:

'''

pedir la edad, lo clasifican en no nato <1, bb 1<>3,

niño 4<>12, adolescentes 13<>17, adulto 18<>65,

tercera edad 66 en adelante

14 de marzo del 2025

'''


#Programa que solo capture números sin el int del input

'''

print ("Cristal  Cruz Cruz: ") 

print(chr(128049))

edad = input("Dame un número: ") 

etapa= ( "No nato o no nacido" if edad < 1 else "bebe" if 1 <= edad < 3 else "Niño" if 4 <= edad < 12 else "Adolescente" if 13 <= edad < 17 else "Adulto")

'''



#var=input("Dame un valor")

#print(var[0], var=[1])

#print(10*(1/10))

#print(algo*10)

#print('2'+2)


try:

edad=int(input("Dame tu edad: "))

etapa= ( "No nato o no nacido" if edad < 1 else "bebe" if 1 <= edad < 3 else "Niño" if 4 <= edad < 12 else "Adolescente" if 13 <= edad < 17 else "Adulto")

print(etapa)

#Uso de ternario

except:

print("no es una edad")


Programa 12:

#pagina 108

#while mientras la condicion sea verdadera, cuando

#la condicion sea falsa se detiene


x=10

while x>1:

print(x)

#Ejercicio

#pedir 3 edades con while

x=3

while x>0:

try:

edad=int(input("Dame tu edad: "))

x-=1

print(x)

except:

print("no es una edad")


Programa 13:

#Pedir clave y  usuario y solo dar tres oportunidades para equivocarse

#TERMINADO


usuario= "Criss"

clave= "181975"

x=3

while x>0:

upsus=input("Dame tu usuario: ")

#x-=1, no va porque resta una vez mas y hace que se equivoque

if upsus==usuario:

print("correcto")

#break rompe el while

clavus=input("Dame tu clave:")

if clavus== clave:

print("Correcto, entra al sistema:")

break 

else: 

print("Usuario correcto, clave incorrecta:")

x-= 1

else:

print("Tienes otra oportunidad:")

x-=1


Programa 14:

#Programa a resolver con try y con except en donde al quitar las comillas se marca un error


usuario = "Criss"

clave = 181975

x = 3

while x > 0:

    upsus = input("Dame tu usuario: ")

    if upsus == usuario:  

        print("Usuario correcto.")

        

        while x > 0:

            try:

                clavus = input("Dame tu clave: ")

                if int(clavus) == clave:

                    print("Correcto, entra al sistema.")

                    break

                else:

                    print("Clave incorrecta.")

                    x -= 1

            except :

                print("¿La clave tiene letras?")

                x -= 1

        break

    else:

        print("Tienes otra oportunidad.")

        x -= 1



Programa 15:

al=["ya", "casi", "sale"]

while al:

al.pop(0)

print(al)


Programa 16:

x=5

while x<0:

print(x) # nunca entra en el ciclo, no corre el programa

while x<2:

print(x)

'''

while x>0:  #valor de inicio, condición, incremento-decremento

print(x)    #control del identificador, para el while

x+=1

'''

while x>0:

#si queremos imprimir el cero, tendríamos que poner el x-=1 aquí

print (x)

x-=1


Programa 17:

#Do while


c = 1

while True: 

    if c <= 3:

        try:

            x = int(input("Dame un numero: "))

            if x == 1:

                print("Campeón")

            elif x == 2 or x == 3:                                          #con un AND se come varias líneas, por lo que se tiene que cambiar por un or

                print("Ya casi")

            elif x == 4 or x == 5: 

                print("Sigue entrenando")

            else:

                print("¿Seguro que compite?")

        except:

            print("No es un numero")

        c += 1

    else:

        break

#2 y 3

#4 y 5


#acumulador: almacena los datos P. aritmética

#contador= cuenta pero con sumas y restas, va restando y sumando

#Inicio, condición y algo que haga falta


Programa 18:

c = 1

cuenta=1

while True: 

    if c <= 3:

        try:

            x = int(input("Dame un numero: "))

            if x == 1:

                print("Campeón")

            elif x <= 2 or x >= 3:                                         

                print("Ya casi")

            elif x <= 4 or x>= 5: 

                print("Sigue entrenando")

            else:

                print("¿Seguro que compite?")

        except:

            print("No es un numero")

        c += 1

    else:

        cuenta=1

        

Programa 19:

#Corregir programa en el que incluso al equivocarse con el usuario

# reste una oportunidad

usuario = "Cristal"  

pasword = 181975 

contador = 0  

while True:

    us = input("Dame tu usuario: ")

    print("us es :", us)

    contador += 1

    if contador >= 3:

        print("Ya no tienes intentos :(")

        break  

    if us == usuario:

        intentosrest = 3 - contador  

        contador2 = 0

        while contador2 < intentosrest:

            try:

                psw = int(input("Escribe el pasword: "))

                print("si psw")

                if psw == pasword:

                    print("Dentro del sistema")

                    break  

                else:

                    print("Contraseña incorrecta.")

                    contador2 += 1

            except:

                print("No es correcto")

                contador2 += 1

            if contador2 == intentosrest:

                print("Suerte para la siguiente ;)")

                continue 

    else:

        print("Usuario incorrecto.")


    print("Estoy en el primer while")


Programa 20:

#else y while

x=5

while x>0:

x-=1

print(x)

else:

print("fin del ciclo")

print("***************************************************************")


x=5

while True:                          #Se controla con un if adentro

x-=1                             # haciendo que no entre el "Fin"

print(x)                         #  y que no se imprima

if x==0:

break 

else:

print("Fin")

print("***************************************************************")


#PERMUTACIONES

i=0

j=0

while i<3:

while j<3:

print("[",i,j,"]" ,end=' ')                 

# end= '' es para darle mejor forma de matriz. 

# "[","]" para agrupar en corchetes.

j+=1

i+=1

print("")

j=0

print("***************************************************************")

i,j,k=0,0,0

while i<3:

while j<3:

while k<3:

print(i,j,k, end= '|')

k+=1

j+=1

k=0

print(" ")

i+=1

j=0


Programa 21:

z=7

x=1

while z>0:

print(' '*z+'*'*x+' '*z)

x+=2

z-=1


Programa 22:

#Pedir el tamaño de la matriz, debe ser cuadrada, y con la forma de un cuadrada


try:

tam=int(input("Dame el tamaño de la matrix: "))

i,j, li, ls=0,0, 0, tam-1

print(i,j,li,ls)

while i<li:

while j<ls:

print("en j valor i", i)

if i==ls:

print("*", end= ' ')

else:

print(" ", end= ' ')

j+1=1

print(" ")

j=0

i+=1

while 1<tam:

while j<tam:

print()

except:

print("No es un numero, ingresa un numero: ")


Programa 23:

try:

    tam = int(input("Dame el tamaño de la matriz (un número entero): "))

    

   

    if tam < 1:

        print("El tamaño de la matriz debe ser mayor o igual a 1.")

    else:

     

        for i in range(tam):

            for j in range(tam):

                print("0", end=" ")

            print()  

except:

    print("No es un numero, intenta nuevamente")


Programa 24:

#Pirámide invertida

try:

n = int(input("Ingrese un número para el tamaño del triángulo: "))

for i in range (n,0,-1):

print(' '*(n-i)+'*'*(2*i-1))

except:

print("No es un numero")


Programa 25:

a, b=0,1 

while b<1000:

print(b, end=",")

a,b=b, a+b


Programa 26:

#for


sec= ["maria", "tenia", "un", "corderito"]

for i in sec:

print(i)

print ("**************************************************************")


'''

for j in sec:

print(j, len(j))

if len(j)>5:                           #que cada vez sea 5, resolver con while·

sec,insert(0, "Mary Had")

'''

 

for j in sec [:]:

print (j, len(j))                                   #usar [:] rebanada, slice

if len (j) ==5:

sec.insert (0, "Mary Had")

print (sec)


Programa 27:

#rangos

sec= ["maria", "tenia", "un", "corderito"]

for i in sec:

print(i)

print("***************************************************************")

#con un rango se pueden obtener datos unicos

for i in range (len(sec)):

print(i, sec[i])

print("***************************************************************")

print(range(10))

print(list(enumerate(sec)))

#Lo que hace es que el enumerate me enumera, en posición 0 tiene "maria"

#enumera cada elemento de la secuencia


print("***************************************************************")


#ahora no con list si no una tupla dentro de una tupla

print(range(10))

print= "Tupla":(enumerate(sec))

print(Tupla)


print(list(range(10)))


Programa 28:

#rangos a detalle

for i in (0,1,2,3,4,5):

print(i)


for i in range (6):

print (i)

print("***************************************************************")


#range (inicio, fin ,salto)

print (list(range(5,20,2)))


for i in range (5,20,2):

print(i)

for i in range(5,0,-1):

print (i)

print("***************************************************************")


 #iniciar en 2, terminar en 20 y decir si es par o impar, con ciclo for

'''

for i in range(2, 21): 

    if i % 2 == 0:

        print(f"{i} es par")

    else:

        print(f"{i} es impar")

        

 '''       

 

        

        for i in range(2, 21): 

    if i % 2 == 0:

        print(f"{i} es par")

    else:

        print(f"{i} es impar")


Programa 29:

for i in range(2, 21): 

    if i % 2 == 0:

        print(f"{i} es par")

    else:

        print(f"{i} es impar")


Programa 30:

import datetime


while True:

try:

fecha=input ("Dame la fecha siguiendo el formato dd-mm-aaaa : ")

fecha=datetime.datetime.strptime(fecha, "%d-%m-%Y")

break

except:

print("No es una fecha")

print(fecha)

print(datetime.datetime.now())

fecha2=datetime.date(2005,3,12)

fecha1=datetime.date(2025,3,25)

hora=datetime.time(7,15,0)

print(fecha1-fecha2)


Programa 31:

#Programa que pida la fecha de nacimiento y los días que han vivido

# 25 de marzo del 2025


import datetime


while True:

try:

fecha=input ("Dame tu fecha de nacimiento en  el formato dd-mm-aaaa : ")

fecha=datetime.datetime.strptime(fecha, "%d-%m-%Y")

break

except:

print("No es una fecha")


fecha1=datetime.date(2025,3,25)

print(type(fecha))

op='%s-%s-%s' % (fecha.month,fecha.day,fecha.year)


op2='%s-%s-%s' % (fecha.year,fecha.day,fecha.day)

print ("usuario: ", fecha)

print(op)

print("actual: ", fecha1)

'''

print(fecha)

print(datetime.datetime.now())


fecha_hoy= datetime.today ().date ()

dias_vividos= (fecha_hoy- fecha). days

print(fecha-fecha2)

print("Has vivido () dias")

'''


Programa 32:

#Funciones

def saludo ():

print ("Hi sis")

print("Dentro de la función")

print("?????????")                     #Se imprimen estos primero porque 

                                             # están arria de la función

saludo ()

print("estoy out")            #para decir que la función se ha terminado


Programa 33:

'''

def cuad():        #Este no imprime porque no están los parámetros dentro

print("x*x")

print(cuad(4))

'''


def cuad(x):

print(x*x)

y=x*x               # Y de la función


cuad(4)

print(cuad(5))          #none: indica que una variable no tiene valor o que una función no devuelve ningún valor.

y=cuad(6)               # y del programa


Programa 34:

def suma(a,b):

print("en funcion suma: ",a+b)

suma (5,8)



print("***************************************************************")



#Programa que pida al usuario un numero y con ese numero hacer una tabla de multiplicar

def  mult (x):

for i in range (1.11):

print (x, "*", i, "=", x*i)

'''

c=1

while c:

try:

val=int(input("Dame un numero: "))

mult (val)

c=0

except:

print("Numero no valido para multiplicar, pon otro")

'''

#Parte comentada no corre, en su lugar usar un for:


numero=int(input("Dame el numero para la tabla: "))

def tabla_multiplicar(numero):


  print(f"Tabla de multiplicar del {numero}:")

  for i in range(1, 11):

    resultado = numero * i

    print(f"{numero} x {i:2} = {resultado:2}")

tabla_multiplicar(numero)


Programa 35:

#Agregar al 34

'''

x+=2

z-=1

print("***************************************************************")

n=9

for i in range (n,0,-1)

print(" "*(n-1)+'*'*(2*i-1))

'''


print("**************************************************************")

def mult2(x,y=1)

print(x+y)

mult2(4)

mult2(4,5)


Programa 36:

def multip (*args):

print(args) #sirve para mandar a la función mas de un argumento

multip(1,2,3,4,5)  #imprime una tupla




#dentro de la función sumar los argumentos uno por uno

# y los imprimen en una variable.

#sumita=1+2+3+4+5


def multip(*args):

    print(args)  

    sumita = sum(args) 

    print(f"La suma de los argumentos es: {sumita}")  


multip(1, 2, 3, 4, 5)


Programa 37:

def suma(*num):  # * se llama apuntador para que tenga varios lugares donde los va a atrapar: 

                   # tiene capacidad de tener varias posiciones                  

print(type(num))

t=0

for i in num:

print(i)

t += i

return t

tot=suma(2,4,6,8)

print ("Suma es: ", tot)


Programa 38:


def sumar(*num):                   

c=1

while c:

try:

n=int(input("Dame un numero:"))

#print(num, type(num))

linum=list(num)

#print(linum,type(linum))

c=0

for i in range (len (linum)):     #se debe de agregar un rango porque no se puede extraer un valor de una lista

linum [i]=linum[i]+n

except:

print("Algo no funciona")

return linum






tot=sumar(18,24,36,44)

print(tot)

'''


linum=[18,24,36,44]

n=5

for i in range(len(linum)):

linum [i]=linum[i]+n

'''


Programa 39:

#programa que pida peso y estatura y determinen en una función IMC

#regresen el valor y lo imprimen



def calcular_imc():

   

    while True:

        try:

            peso = float(input("Dame tu peso en kg: "))

            estatura = float(input("Dame tu estatura en metros: "))

            if peso <= 0 or estatura <= 0:

                print("El peso y la estatura deben ser en kg y en mts")

                continue

            imc = peso / (estatura ** 2)

            return imc

        except :

            print("Algo no está bien en los datos dados. Inténtalo de nuevo.")



limc = calcular_imc()



print(f"Tu Índice de Masa Corporal (IMC) es: {limc:.2f}")


Programa 40:

def suma (**kwargs):

su = 0

for key, value in kwargs.items():

print (key, value)

su += value

return su

print(suma(a=5, b=20, c=23)) #48

#diccionario


Programa 41:

#Pedir al usuario cuantas llaves

#Llaves valor numerico

#a cada llave, preguntar,cuantos valores

#Capturar, asignar


def totllave ():

c=1

while c:

try:

pllave= int(input("Dame cuantas llaves: "))

print(pllave)

c=0

except:

print("Algo salio mal")

return pllave

def capvalores(mllave):

mllave=totllave()

totllave()

print ("*************************************************************")


def capturar_llaves_y_valores():

    diccionario = {}

    try:

        

        num_llaves = int(input("¿Cuántas llaves quieres agregar? "))

        if num_llaves <= 0:

            print("El número de llaves debe ser mayor que 0.")

            return

        

       

        for _ in range(num_llaves):

            llave = input("Nombre de la llave: ")

            num_valores = int(input(f"¿Cuántos valores para '{llave}'? "))

            if num_valores <= 0:

                print(f"Debe haber al menos un valor para la llave '{llave}'.")

                continue

            diccionario[llave] = [input(f"Ingrese valor {i+1}: ") for i in range(num_valores)]

        

        print("\nDiccionario final:", diccionario)

    

    except:

        print("Error: Ingresa un número válido.")



capturar_llaves_y_valores()


Programa 42:

def si_suma(a,b):

'''

algo dentro

'''

return a+b

print(si_suma(5,6))


Programa 43:

def multi(num: int)->int:        #metadatos

return num*3

#garantiza que el parámetro que entre sea un entero y el el que salga también sea un entero

print(multi (6))


Programa 44:

#Declarar lista

x=[18,12,1975]       #funciona como si fuera global

def funciona (entrada):

entrada.append(8)

funciona(x)

#el append solo funciona para una lista

print(x)

  


Programa 45:


x=[18,12,1975]    

def funciona (entrada):

entrada=[]

print("entrada", entrada)

funciona(x)


print(x)

  

Programa 46:

x=10     

print(id(x))


def funciona(entrada):

entrada=0

print(id(entrada))

funciona(x)


Programa 47:

"""

#TAREA

Hacer una lista de calificaciones

pedir al usuario numero de estudiantes

hacer un numero de control consecutivo

con el numero de control van a asignar 3 calificaciones por estudiante

en otro diccionario copian lo anterior y agregar el promedio 

44901 45 78 90

44902 80 70 85

capturan lo de arriba 

en otro diccionario 

44901 45 78 90 71

44902 80 70 85 78.5"""



def numes():

while True:

try:

nest=int(input("Dame tu numero de estudiante: "))

break

except:

print("Valor invalido")

return nest



def ingcal(cales):

dicc=dict()

try:

ncontrol=int(input("Dame el primer numero de control de referencia: "))

for i in range (cales):

ncontrol+=1

try:

Nomat=int(input("Ingresa cuantas materias quieres: "))

Vinternos=[]

for j in range (Nomat):

conten=float(input("Dame tus calificaciones: "))

Vinternos.append(conten)

dicc[ncontrol]=Vinternos

prom=list()

prom=float(sum(Vinternos)/len(Vinternos))

Vinternos.append(prom)

except: print("No es un numero")

except:

print("No es un numero de control")

return dicc


cales=numes()

print(cales)

print(ingcal(cales))


Programa 48:

def funcionar (a,b,*args, **kwargs):

print ("a= ", a)

print ("b= ", b)

for arg in args:

print("args= ", arg)

for key, value in kwargs.items():

print(key, "=", value)

funcionar (10,20,1,2,3,4, x="hola", y="tu", z="hey")


Programa 49:

def funcionar (a,b,*args, **kwargs):

print ("a= ", a)

print ("b= ", b)

for arg in args:

print("args= ", arg)

for key, value in kwargs.items():

print(key, "=", value)

args=[1,2,3,4]

kwargs={'x':"hola",'y':"tu", 'z':"hey"}

funcionar (10,20, *args, **kwargs)


Programa 50:


def funcionar(a, b, *Sia, **Furler):
    print("a =", a)
    print("b =", b)
    for arg in Sia:
        print("args =", arg)  
    for key, value in Furler.items():
        print(key, "=", value) 

args = [1, 2, 3, 4]
kwargs = {'x': "Florence", 'y': "And", 'z': "The Machine"}

funcionar(10, 20, *args, **kwargs)


Programa 51:

def suma (a: 'parámetro 1', b: 'parametro2')-> 'retorno':

return a+b

print(suma.__annotations__)


Programa 52:

#para las clases poner la palabra reservada "class"


class ClaseUno:

pass

def funciona(a:ClaseUno)->ClaseUno:  

#Agregar un return siempre que se haga uno de la flecha

return a

a=ClaseUno

funciona(a)


Programa 53:

def pares(sal:'list'= [])-> 'list':

return [i for i in sal if i%2==0 ]

'''

#Esto es lo mismo que las líneas de arriba

for i in sal

if i%2==0

print(i)

else

pass

'''

print (pares([1,2,3,4,5,6]))


Programa 54:

#U3p54

#lo usamos como biblioteca

def sumar(a,b):

return a+b

def restar(a,b):

return a-b


Programa 55:


import U3p54

print(U3p54.sumar(2,4))

print(U3p54.restar(2,4))


Programa 56:

import P34

print(P34.mult)

#al llamar bibliotecas solo regresan return




Comentarios

Entradas populares de este blog

UNIDAD 4

Unidad 2