# Crea una función llamada area_cuadrado que tome # la longitud de un lado como argumento y devuelva el área del cuadrado. def area_cuadrado(lado): if lado<=0: return 0 return lado*lado # return lado**2 # Crea una función llamada promedio que tome tres números # como argumentos y devuelva su promedio. def promedio(num1,num2,num3): return(num1+num2+num3)/3 print(promedio(2,4,6)) # Crea una función factorial que calcule el factorial de un número entero dado. El factorial de un número n se calcula # como el producto de todos los enteros positivos desde 1 hasta n. def factorial(numero): resultado=1 for i in range(1,numero+1): resultado*=i return resultado def factorial2(numero): resultado=numero for i in range(2,numero): resultado*=i return resultado def factorial3(numero): resultado=1 for i in range(numero,1,-1): resultado*=i return resultado def factorial4(numero): for i in range(2,numero): numero*=i return numero print(factorial4(5)) # Crea una función cuenta_letras a la que le pasamos una cadena y una letra # y nos devuelva cuantas veces aparece esa letra en la cadena def cuenta_letras(cadena,letra): cont=0 # recorrer todas las letras de la cadena for caracter in cadena: # si la letra de la cadena es igual a la letra que nos pasan # contamos una aparición if caracter==letra: cont+=1 return cont print(cuenta_letras("hola que tal estas","s"))
Categoría: Python
Funciones
# funciones # Un fragmento de código que realiza algo y que se puede reutilizar # Una manera de organizar código, de simplificar flujo de programa # Tener las cosas centralizadas def saludo(nombre="Desconocido"): # parámetro nombre print("Hola",nombre,"que tal estás. Yo muy bien.") print("Es importante aprender las funciones") print("Y estudiar") saludo("Juan") print("yo no") saludo("Ana") print("Yo tampoco") saludo(15) def mayor(a,b): if (a>b): print(a) else: print(b) mayor(8,8) mayor(1,89) mayor(87,1) # PURAS # funciones # Un fragmento de código que realiza algo y que se puede reutilizar # Una manera de organizar código, de simplificar flujo de programa # Tener las cosas centralizadas # Esto sí es una función pura def saludo(nombre="Desconocido"): # parámetro nombre return "Hola "+nombre+" que tal estás. Yo muy bien." # return nos sirve para devolver algo resultado=saludo("Juan") print(resultado) # Funciones puras # es una caja negra. Le paso parámetros y me devuelve resultados # Sin interactuar con el entorno def mayor(a,b): if (a>b): return a else: return b num=mayor(23,232) # Un programa que sume una lista de numeros solo si son pares def es_par(numero): return numero % 2 == 0 def sumaPares(lista): total = 0 for numero in lista: if es_par(numero): # ¿Por qué utilizar una función? total += numero return total lista=[1,2,3,4,5,6] print(sumaPares(lista)) # Crear una función que le pasemos tres numeros y nos devuelva el mayor # el def y el nombre # parametros # codigo que resuelve el problema # devolver el resultado # probar def mayor(a,b,c): if a>=b and a>=c: return a if b>=a and b>=c: return b return c print(mayor(10,200,200))
Bucles anidados
# pintar un arbolito for i in range(5): for j in range(i + 1): print("*", end=" ") print() # Todas las tablas de multiplicaar for j in range(1,11): print("Tabla de multiplicar del ",j) for i in range(1,11): print(f"{i} x {j} = {i*j}") # Todos los números primos hasta el 100 for numero in range(2,100): es_primo=True for i in range(2,numero): if (numero % i==0): es_primo=False break if es_primo: print(numero, end=", ") for i in range(2,20): numero=i while numero!=1: # Si el número es par (numero %2==0) dividirlo entre 2 print(numero,end=", ") if numero%2==0: numero//=2 # numero=int(numero/2) # Si el número es impar multiplicarlo por 3 y sumarle 1 else: numero=numero*3+1 # lo imprimo print(1)
Soluciones ejercicio
# Pedir al usuario un número numero=int(input("Introduce un número")) # Hacemos un proceso hasta que el número sea 1 # Cuando sea uno hemos acabado while numero!=1: # Si el número es par (numero %2==0) dividirlo entre 2 print(numero,end=", ") if numero%2==0: numero//=2 # numero=int(numero/2) # Si el número es impar multiplicarlo por 3 y sumarle 1 else: numero=numero*3+1 # lo imprimo print(1) # Pedir al usuario un número numero=int(input("Introduce un número")) # Hacemos un proceso hasta que el número sea 1 # Cuando sea uno hemos acabado cadena=str(numero)+", " while numero!=1: # Si el número es par (numero %2==0) dividirlo entre 2 if numero%2==0: numero//=2 # numero=int(numero/2) # Si el número es impar multiplicarlo por 3 y sumarle 1 else: numero=numero*3+1 cadena+=str(numero)+", " # lo imprimo print(cadena[:-2])
Códigos while y for
# bucle while ejecuta mientras se cumpla una condicion cont=1 numero=7 print(f"Tabla de multiplicar del {numero}") while cont<=10: print(f"{cont} x {numero} = {cont*numero}") # Dentro del bucle while tengo que modificar algo de la condicion cont+=1 total=0 num=int(input("Introduce un numero (0 para salir) ")) while num!=0: total+=num num = int(input("Introduce un numero (0 para salir) ")) print("La suma total es",total) import random numero_secreto = random.randint(1, 100) print(numero_secreto) intentos = 0 intento=0 while intento != numero_secreto: intento = int(input("Intenta adivinar el número (entre 1 y 100): ")) if intento<1 or intento>100: print('ERROR: Numeros entre 1 y 100') continue # Sáltate el resto de líneas y vuelve al principio intentos += 1 if intento == numero_secreto: print(f"Felicitaciones, ¡adivinaste el número {numero_secreto} en {intentos} intentos!") break # Sal del bucle elif intento>numero_secreto-5 and intento<numero_secreto+5: print("Estás cerca") elif intento < numero_secreto: print("El número es mayor. Intenta de nuevo.") else: print("El número es menor. Intenta de nuevo.") lista=[1,2,3,4,5,6,7] for elemento in lista: print(elemento) alumnos=["Ana","Juan","Eva","Pep"] for alumno in alumnos: print(alumno) cant="hola que tal" for n in cant: print(n) for i in range(len(alumnos)): print(alumnos[i]) for i in range(1,6): print(i) for i in range(1, 6,2): print(i) """Escribe un programa que recorra una lista de números y calcule la suma de todos los números pares en la lista. También la media """ lista=[1,2,3,4,5,6,7,100,90,3] suma=0 cont=0 for elemento in lista: print(elemento) if elemento%2==0: suma+=elemento cont+=1 print("Total",suma) print("Media",suma/cont)
Código de hoy: if
edad = 17 if edad >= 18: print("Eres mayor de edad.") else: print("Eres menor de edad") """ if edad<18: print("Eres menor de edad") print("Por lo tanto no puedes entrar a la discoteca") print("Cuando crezcas") if edad==17: print("Te falta poco") """ print("fin de programa") sueldo=5000 if sueldo>600 and sueldo<1500: print('Sueldo bajo') elif sueldo<3000: print('Sueldo medio') else: print('Sueldo alto') # Pido un sueldo y a) compruebo que sea legal # b) si es menor de 2000 aplico un 15% de irpf # c) si es mayor aplico un 25% sueldo=int(input("introduce tu sueldo ")) if sueldo<1000: print('Sueldo ilegal') else: print('Sueldo correcto. El sueldo neto es', end=' ') if sueldo<2000: print(sueldo*.85) else: print(sueldo*.75) print('Enhorabuena') print('Campeón') print('Donde estoy?') # Cuando el sueldo >=1000 print('Y yo?') # Siempre porque está sin ningún margen edad = 25 tiene_licencia = False # Combinación de condiciones con 'and' if edad >= 18 and tiene_licencia: print("Puede conducir un automóvil.") else: print("No puede conducir un automóvil.") es_estudiante = False es_empleado = False # Combinación de condiciones con 'or' if es_estudiante or es_empleado: print("Es estudiante o empleado.") else: print("No es estudiante ni empleado.")"""Escribe un programa que solicite al usuario su edad y determine si es menor o igual a 18 años. Si es menor o igual a 18 años, muestra el mensaje “Eres menor de edad”, de lo contrario, muestra “Eres mayor de edad”.""" # Solicitar edad al usuario edad=int(input("Introduce tu edad")) # Comprobar si es menor o igual a 18 y en ese caso imprimir menor if edad<=18: print("Eres menor de edad") # Caso contrario imprimir mayor else: print("Eres mayor de edad") """Crea un programa que pida al usuario dos números y determine cuál es el mayor de los dos números. Si son iguales, muestra un mensaje que indique que los números son iguales.""" # Pedir dos numeros a=int(input("Introduce el primer numero")) b=int(input("Introduce el segundo numero")) print(a,b) # decir cual es el mayor if a>b: print('El mayor es el primero') if b>a: print('El mayor es el segundo') # Si son iguales decir que son iguales if a==b: print('Son iguales') if a>b: print('El mayor es el primero') elif b>a: print('El mayor es el segundo') else: print('Son iguales') if a==b: print('Son iguales') elif b>a: print('El mayor es el segundo') else: print('El mayor es el primero') # Pedir un usuario y un password y si son 1234 1234 acceder usuario=input("Introduce el usuario") password=input("Introduce el password") if usuario=='1234' and password=='1234': print ("P'alante") else: print('No puedes entrar')
Solución ejercicios
"""Escribe un programa que tome una entrada del usuario como una cadena que represente un número entero, conviértela a un entero y luego multiplique ese número por 2. Finalmente, muestra el resultado.""" # pido un número numero=input("Introduce un numero") # lo convierto a entero int_numero=int(numero) # lo multiplico int_numero=int_numero*2 # lo muestro print(int_numero) numero=int(input("numero")) print(numero*2) print(int(input("numero"))*2) """Crea un programa que tome un número decimal como entrada del usuario (por ejemplo, 3.14) y conviértelo en un entero. Luego, muestra el número entero resultante.""" numero=input("Dame un numero decimal") dec_numero=float(numero) int_numero=int(dec_numero) print(int_numero) print(int(float(input("Numero decimal")))) """Escribe un programa que tome una cadena de caracteres que represente “True” o “False” (en minúsculas o mayúsculas) como entrada del usuario, conviértela a un valor booleano y luego muestre la variable resultante.""" variable=input("Dame true o false") bool_variable=variable=='True' print(bool_variable)
Código Básico Python
# variables # Importante: Sensibles a mayúsculas y minúsculas # Numéricas num_entero=900 num_flotante=9.5 numEntero=90 print(num_entero) print(num_flotante) # Cadena nombre="Ana" apellidos='Pi' print(nombre,apellidos) # Booleanas cierto=True falso=False print(cierto) nombre=input("Introduce tu nombre") # Que no haga salto de línea al imprimir print('hola', nombre, end=' ') # Cadena con formato print(f" Hola que tal estamos") print(f"Hola {nombre} ¿Qué tal estás?") # Cambiar el separador por defecto print("hola","que","tal") print("hola","que","tal",sep="|") print('hola',nombre,sep=' - ') print(1,2,3,4,5,6,sep=' , ') edad=input("Dime tu edad") nombre="Ana" sueldo=1000 iva=.21 precio=100*iva tuedad=int(edad) mayor_edad=tuedad>=18 print("Dentro de 10 años tendrás",tuedad+10) a = 10 b = 7 print(a + b) print(a / b) ## Ejemplo de los coches: si tengo 10 coches a repartir entre 7 personas ## Le toca un coche a cada uno (divisón entera //) ## Y sobran 3 (módulo %) print(a // b) print(a % b) numero = 9 print(numero % 2) numero = 4 print(numero % 2) # 2 elevado a 4 print(2 ** 4) numero = numero + 5 print(numero) numero += 5 print(numero) mayordeedad=True dinero=False print(mayordeedad and dinero) print(mayordeedad or dinero) print(not dinero)
Curso de Python
Añadimos el curso de Python a nuestro catálogo: