Entradas

Mostrando entradas de noviembre, 2020

Carácteres especiales !

 print("Hola com et dius?") print('I l\'alumna va dir "Maria"') print("I l\'alumna va dir \"Maria\"") print("Hola com\net dius?") print("Hola com\rdius?") #sobreescribe lo escrito con lo que sigue char a char print("Hola com ens \tdiem?") #tabulador print("Hola com e\\t dius?") print("Hola com e\bt dius?")#enrere un espai print("Hola com e\vt dius?")#emoji masculí

Aprende a usar las clases

  class Dog:          tricks = []  #Llista compartida per totes les instàncies          def __init__(self, name):         self.name = name         self.tricks = []              def add_trick(self, trick):         self.tricks.append(trick)          d = Dog('Fido') e = Dog('Buddy') d.add_trick('roll over') e.add_trick('play dead') print(d.tricks) class Dalmatian(Dog) :     def __init__(self, name, numSpots):         self.numSpots = numSpots         Dog.__init__(self, name) f=Dalmatian('Thunder', 24)

Lista de la compra: append y más

 llistaCompra=['pa','llet','ous','enciam','mongetes'] preus = {     'pa' : 0.85 ,     'llet' : 1.15 ,     'ous' : 1.75 ,     'enciam' : 1.50 ,     'mongetes' : 4.99     } for key, val in preus.items():     print("El preu de {} és {}".format(key, val))     print() quantitats = {     'pa' : 1,     'llet' : 2,     'ous' : 1,     'enciam' : 3,     'mongetes' : 2./3.     } cost = [] for key, val in preus.items() :     cost.append(val*quantitats[key])     print("El cost del {} és {}".format(key,val*quantitats[key]))     print()      cost = [preus[key]*quantitats[key] for key in preus.keys()] print(cost) print() for key, val in preus.items() :     print("El cost del {} és {:.2f}".format(key,val*quantitats[key]))     print() total=0 for item in cost : total += item print("Tot plegat costa...

Av 2 Contar centenas de un valor

 # Solicitar al usuario que ingrese un número entero numero = int(input("Por favor, introduce un número entero: ")) # Calcular las centenas centenas = (numero // 100) % 10 # Mostrar las centenas print("Las centenas del número", numero, "son:", centenas) ###########O tamb def obtener_centenas(numero):     centenas = (numero // 100) % 10     return centenas # Solicitar al usuario que ingrese un número entero numero = int(input("Por favor, introduce un número entero: ")) # Llamar a la función e imprimir el resultado centenas = obtener_centenas(numero) print("Las centenas del número", numero, "son:", centenas)

Av 2 Contar letras de una lista

 # Solicitar al usuario que ingrese una frase frase = input("Por favor, introduce una frase: ") # Inicializar un contador para contar las letras 'a' contador_a = 0 # Recorrer la frase y contar las letras 'a' for letra in frase:     if letra == 'a' or letra == 'A':         contador_a += 1 # Mostrar el resultado print("El número de letras 'a' en la frase es:", contador_a)

P.5 Juego tirar dados

  #definimos la función def ini_jugadors () :   list_jugadors= []   num_jugadors= int ( input ( 'número de jugadors: ' ))   for i in range ( 1 , 1 +num_jugadors ):     nom= input ( 'nom jugador/a ' + str ( i ) + ': ' )     list_jugadors.append ( nom )   num_rondes= int ( input ( 'Quantes rondes voldreu jugar? ' ))   return num_jugadors , list_jugadors , num_rondes ini_jugadors () def recompte_gen ( num_jugadors , num_rondes ) :   llistgran= []   for ronde in range ( num_rondes ):     llistpetit= []     for jugador in range ( num_jugadors ):       llistpetit.append ( 0 )     llistgran.append ( llistpetit )   return llistgran recompte_gen ( 3 , 5 ) import random as rand def tirada2daus () :   dau1=rand.randint ( 1 , 6 )   dau2=rand.randint ( 1 , 6 )   return dau1+dau2 tirada2daus () def aposta ( nom ) :   print ( "Aposta de " +nom )   valor=...

S.5 Juego tirar dados

 import random #EJEMPLO 1 def ini_joc () :     nums_jugadors = int(input("Quants jugadors sou? "))          noms = []     for i in range(nums_jugadors) :         noms.append(input("Quin és el vostre nom? "))              rondes= int(input("Quantes rondes voleu jugar? "))     return nums_jugadors, noms, rondes nums_jugadors, noms, rondes = ini_joc() print(f'{nums_jugadors, noms, rondes}') #EJEMPLO 2 def recompte_gen(nums_jugadors, rondes) :     puntuació = []      for ronda in range(rondes):              ronda_puntuacions = [0] * nums_jugadors         puntuació.append(ronda_puntuacions)          return puntuació # Exemple resultat = recompte_gen(nums_jugadors,rondes) print(resultat) #EJEMPLO 3 def tirada2daus() :     tirada1= (random.randint(1, 6))    ...

P.4 Gestión de gastos

  #definimos la función def nova_persona ( d , nom ) :   d [ nom ] = [ 0 , 0 ] despenses= {} nova_persona ( despenses , 'Josep' ) nova_persona ( despenses , 'Joana' ) print ( despenses ) def reset ( d ) :   for clau in d :     d [ clau ] = [ 0 , 0 ] despenses= { 'Josep' : [ 234 , 10 ], 'Joana' : [ 3 , 10 ]} print ( "Before reset :" , despenses ) reset ( despenses ) print ( "After  reset :" , despenses ) def activitat ( d , participants , qui_paga , quant ) :   for user in participants :     d [ user ][ 1 ] +=quant/ len ( participants )   d [ qui_paga ][ 0 ] +=quant despeses= {} #inicialitzem els participants nova_persona ( despeses , 'Pep' ) nova_persona ( despeses , 'Joana' ) nova_persona ( despeses , 'Lluisa' ) #El Pep i la Lluisa van a sopar i costa 50 euros, paga la Lluisa. activitat ( despeses ,[ "Pep" , "Lluisa" ], "Lluisa" , 50.0 ) #La Joana i la Luisa van a veur...

S.4 Gestión de gastos

 def nova_persona (d, nom) :     d[nom] = [0, 0]     return d despeses = {} nova_persona(despeses, 'Josep') nova_persona(despeses, 'Joana') print(despeses) #EXERCICI2 def reset (d, nom):     d[nom] = [0, 0]     return d despeses={'Josep': [234, 10], 'Joana':[3,10]} reset(despeses, 'Josep') reset(despeses, 'Joana') print(despeses) #EXERCICI 3 def activitat(d, participants, qui_paga, quant) :          #per saber el cost per persona:   cost_per_persona = quant/len(participants)      #afegim el cost per persona a la segona columna (1)   for persona in participants:           d[persona][1] += cost_per_persona            #sumem el preu de la activitat a la primera columna (0) de la persona que paga   d[qui_paga][0] += quant           #Exemple: despeses= {} #inicialitzem els participants nova_persona(despes...

P.3 Juego con listas y letras

  paraula = input ( 'Introdueix una paraula (en minúscules): ' ) llista_paraula = [] for i in paraula :   llista_paraula.append ( i ) print ( llista_paraula ) trobades = [] while len ( trobades ) < len ( llista_paraula ):   lletra = input ( 'Introdueixi una lletra: ' )   if lletra in llista_paraula and lletra not in trobades :     print ( 'La paraula conté la lletra: ' +lletra )     trobades.append ( lletra )   else :     print ( 'La paraula NO conté la lletra: ' +lletra )   for i in llista_paraula :     if i in trobades :       print ( i , end= '' )     else :       print ( '*' , end= '' )   print () print ( "Final del joc" )

S.4 Juego con listas y letras

 paraula = input("Digues una paraula. ") llista_paraula = [] trobades = [] for char in paraula:      llista_paraula.append(char)     while llista_paraula != trobades:         lletra = input("Digues una lletra. ")        if lletra in paraula:         print(f"La paraula conté la lletra: {lletra}")         for char in llista_paraula:             if char in trobades:                 print(char, end=" ")             elif char == lletra:                 print(char, end=" ")                 trobades.append(char)             else:                 print('*', end=" ")       else:          print(f"La...

Nota S3 Suma/Llamada de listas

EJEMPLO 1 a = [1,2] b = [3,4] c = a + b EJEMPLO 2 telefons={'Alice' : 1, 'Bob' : 2, 'Charlie' : 3} for persona, telefon in telefons.items():     print(f"El telèfon del / de la {persona} és {telefon} .")

S2 Inputs, sumas

EJEMPLO 0  print("Benvingudes i benvinguts a la classe de problemes d’informàtica") print() nom = input("Com et dius? ") edat = input("Quants anys tens? ") alçada = input("Quina és la teva alçada ") print("Moltes gràcies per participar ") EJEMPLO 2 a = 3 b = 5 c = 2.3 d = "h" e = "k" x=a+b print((x),type(x)) #Hem assignat x com variable,que a la seva vegada és la suma de a+b, per tant al fer #print(x) imprimeix el resultat de la suma i al incloure el type(x) dins del  #print(x), al costat també imprimirà el tipus de variable que és, en aquest cas #es 'int' que significa que x és un nombre enter. EJEMPLO 2 Valor_1 = int(input("Entra el primer valor ")) Valor_2= int(input("Entra el segon valor ")) x= Valor_1 + Valor_2  print(f"Si sumes {Valor_1} i {Valor_2} el resultat és {x}")

Nota: Uso de comillas

La paraula "Tisch" en alemany vol dir 'taula' s = 'La paraula "Tisch" en alemany vol dir \'taula\''

Av 1.10 Lista de 50 componentes

 l = [None] * 50

S Av 1.9.5 Multiplicar listas

 x = list(range(1, 51))  # Crear la lista x del 1 al 50 y = list(range(3, 151, 3))  # Crear la lista y de múltiplos de 3 # Calcular la lista xy utilizando comprensión de lista xy = [a * b for a, b in zip(x, y)]

Av 1.9 Multiplicar listas

 xy = [x[i]*y[i] for i in range(len(x))]

Av 1.8 Número positivo o negativo?

 num=input("Introdueix un número: ") num=int(num) if num > 0 :     print("Positiu") elif num < 0 :     print("Negatiu") elif num == 0 :     print("Zero") else :     print("Això no era un número")

S Av 1.7.5

def zodiacXines(any_naixement):     signes = ["mono", "gall", "gos", "porc", "rata", "bou", "tigre", "conill", "drac", "serp", "cavall", "cabra"]     index_signe = any_naixement % 12     signe_chines = signes[index_signe]     return signe_chines

Av 1.7 Zodiaco %

 def zodiacXines(year) :     signes = ["mono", "gall", "gos", "porc", "rata", "bou", "tigre",               "conill", "drac", "serp", "cavall", "cabra"]     return signes[year%12]

Av 1.6.5 Parte real e imaginaria

  def reim(numero):     parte_real = round(numero.real, 15)     parte_imaginaria = round(numero.imag, 15)     print(f"La part real és {parte_real} , i la part imaginària és {parte_imaginaria} .")

Av 1.6 Parte real e imaginaria

 def reim(num) :   #num = complex(num)   print ("La part real és {} , i la part imaginària és {} .".format(       round(num.real, 15), round(num.imag,15) ) )   return

S Av 1.5.5 Comprobar número en intervalo

 def isInInterval (n, a, b):     return a <= n <= b

Av 1.5 Comprobar número en intervalo

 def isInInterval(n, a, b) :     if n>=a and n<=b : return True     else : return False

S Av 1.4.5 Comprobar potencia de 2

 def potencia2(N):     if N <= 0:         return False  # N no puede ser una potencia de 2 si es menor o igual a 0          while N > 1:         if N % 2 != 0:             return False  # Si no es divisible por 2, no es una potencia de 2         N = N // 2  # Dividimos N por 2     return True

Av 1.4 Comprobar potencia de 2

 def potencia2(num) :     while num%2 == 0 :         num = num//2     if num == 1 : return True     else : return False

S Av 1.3.5 Sumatorio

 while True:     try:         N = int(input("Introduir valor enter: "))         if N <= 0:             print("Error: el valor ha de ser més gran que zero")         else:             break     except ValueError:         print("Error: Introdueix un valor enter positiu vàlid.") suma = sum(range(1, N + 1)) print(f"El sumatori de {N} és: {suma}")

Av 1.3 Sumatorio

 N=-1 while N < 1 :     N=int(input("Introduir valor enter: "))     if N < 1 :         print("Error: el valor ha de ser més gran que zero") result = 0 for i in range(1,N+1) :     result += i print("El sumatori de {} és: {}".format(N, result))

S Av. 1.2.5 Número pi y error relativo

import math def calcular_pi(termes):     pi_aproximat = 3.0     signe = 1.0     denominator = 2.0     for i in range(1, termes + 1):         terme_actual = signe * (4.0 / (denominator * (denominator + 1) * (denominator + 2)))         pi_aproximat += terme_actual         signe *= -1         denominator += 2         error_relatiu = abs(pi_aproximat / math.pi - 1)         if i % 2 == 0:  # Cambia el signo del error relativo en iteraciones pares             error_relatiu *= -1         print(f'El terme {i} és: {pi_aproximat}   Error relatiu: {error_relatiu}')     return pi_aproximat # Número de termes que vols utilitzar per a l'aproximació termes = 20 pi_estimat = calcular_pi(termes)

Av 1.2 Número pi y error relativo

 import math pi = 3. for i in range(1,21) :   pi += 4.*(-1)**(i+1)/(2*i*(2*i+1)*(2*i+2))   print("El terme {} és: {}   Error relatiu: {}".format(i, pi, pi/math.pi-1.))

Av.1.1 Operaciones matemáticas

#suma x = a+b print(x) #resta y=a-b print(y) #multiplicació z= a*b print(z) #divisió entera w= a//b print(w) #residu de la divisió r= a%b print(r) #divisió amb decimals d= a/b print(d) #exponenciació e= a**b print(e)

S.1 Adivinar número

 import random número_secret = (random.randint (1,100)) endevinat = False print ("Benvingut a endevina el número! Has d'endevinar el número secret entre 1 i 100") while not endevinat:     try:         intent = int(input("Quin és el número secret?"))         if intent < 1 or intent > 100:             print ("Proposa un número del 1 al 100")         elif intent > número_secret:               print ("El número secret és més petit, torna-ho a intentar")         elif intent < número_secret:           print ("El número secret és més gran, torna-ho a intentar")         elif intent == número_secret:             endevinat = True             print (f"Felicitats! Has endevinat el número secret, que era {número_secret}.") ...

P.1 Adivinar número

 # Initialization secretNumber = -1 while secretNumber < 1 or secretNumber > 100 :   secretNumber = int(input("P1: Entra el nombre secret entre 1 i 100: ")) print() print() found=False # Main loop while not found :   guess = int(input("P2: Entra un nombre entre 1 i 100: "))   if guess > secretNumber :     print("El nombre secret és més petit")     print()   elif guess < secretNumber :     print("El nombre secret és més gran")     print()   elif guess == secretNumber :     found = True     print("Felicitats, has encertat el nombre secret!")     print()