Diferència entre revisions de la pàgina «ASIX 2025-2026»

De binefa.com
Salta a la navegació Salta a la cerca
 
(Hi ha 6 revisions intermèdies del mateix usuari que no es mostren)
Línia 19: Línia 19:
  
 
[https://fje.sharepoint.com/sites/GD_CLOT-FP-CLOT_FP-DptInformatica/Documentos%20compartidos/Forms/AllItems.aspx?id=%2Fsites%2FGD%5FCLOT%2DFP%2DCLOT%5FFP%2DDptInformatica%2FDocumentos%20compartidos%2FCLOT%5FFP%2DDptInformatica%2F2526%2FLLISTES%20ASSIST%C3%88NCIA&viewid=0378dc70%2Dd30b%2D4dbf%2D9ffc%2D0a0ea8f8bf65&FolderCTID=0x0120003BC8367864239F40A596CE0A21832195 Totes les llistes]
 
[https://fje.sharepoint.com/sites/GD_CLOT-FP-CLOT_FP-DptInformatica/Documentos%20compartidos/Forms/AllItems.aspx?id=%2Fsites%2FGD%5FCLOT%2DFP%2DCLOT%5FFP%2DDptInformatica%2FDocumentos%20compartidos%2FCLOT%5FFP%2DDptInformatica%2F2526%2FLLISTES%20ASSIST%C3%88NCIA&viewid=0378dc70%2Dd30b%2D4dbf%2D9ffc%2D0a0ea8f8bf65&FolderCTID=0x0120003BC8367864239F40A596CE0A21832195 Totes les llistes]
== 20260206 (1h) ==
+
== 20260209 (2h) ==
 
* Dubtes
 
* Dubtes
* [[Comparació dels diccionaris de Python i les estructures de C]]
+
[https://recull.binefa.cat/files/20250401/ Codis comentats avui a classe] usuari: ''asix'' / contrasenya: ''asix2425''
* Try-except a Python:
+
 
  try:
+
<!-- Exercicis de '''recursivitat'''. ([https://recull.binefa.cat/files/20231214/ m4p01.c, m4p02.c, m4e1.c, m4e2.c i m4e2.py])
     # Intentem fer una operació que podria fallar
+
 
    numero = int(input("Introdueix un número: "))
+
[http://www.xtec.cat/formaciotic/ateneu_historic/materials/td97/d97m4/annex.htm La '''depuració''' en C emprant '''gdb''']
    resultat = 10 / numero
+
-->
    print(f"El resultat és {resultat}")
+
=== Separació d'arxius en Python ===
 +
 
 +
'''crida01.py''':
 +
  # crida01.py
 +
 +
def nLaTevaEdat():
 +
     return int(input("La teva edat: "))
 
   
 
   
  except ZeroDivisionError:
+
  '''if __name__ == "__main__":'''
    # Es llança si l'usuari posa un 0
+
     print("Dius tenir %d anys"%nLaTevaEdat())
     print("Error: No es pot dividir per zero!")
+
 
 +
'''principal.py''':
 +
# principal.py
 +
'''import''' ''crida01''
 
   
 
   
  except ValueError:
+
  nEdat = ''crida01''.nLaTevaEdat()
    # Es llança si l'usuari escriu lletres en comptes de números
+
print("Heu dit que teniu %d anys"%nEdat)
    print("Error: Has d'introduir un número enter vàlid.")
+
 
 +
'''principal02.py''':
 +
# principal02.py
 +
'''from''' crida01 '''import''' ''nLaTevaEdat''
 
   
 
   
  except Exception as e:
+
  nEdat = ''nLaTevaEdat''()
    # Captura qualsevol altre error inesperat
+
print("Heu dit que teniu %d anys"%nEdat)
    print(f"Ha passat un error imprevist: {e}")
+
 
 +
'''principal03.py''':
 +
# principal03.py
 +
'''from''' crida01 '''import''' nLaTevaEdat '''as''' ''nIntroEdat''
 
   
 
   
  finally:
+
  nEdat = ''nIntroEdat''()
    # Aquest bloc s'executa SEMPRE, hi hagi error o no
+
print("Heu dit que teniu %d anys"%nEdat)
    print("Final de la gestió d'errors.")
+
=== Separació d'arxius en C ===
 +
[https://recull.binefa.cat/ Exemple de separació d'arxius en C al recull d'avui]
 +
 
 +
== 20260206 (1h) ==
 +
* Dubtes
 +
* [[Comparació dels diccionaris de Python amb les estructures de C]]
 +
* [[try-except a Python]]
 +
* [[Estructures de Dades Lineals a Python: Llistes i Tuples]]
  
 
== 20260202 (2h) ==
 
== 20260202 (2h) ==

Revisió de 18:26, 9 feb 2026

Quan tingueu les credencials d'accés a la NET heu de compartir-nos (als dos professors) una carpeta amb aquest nom: 2526-ASIX-SM3-1rCognom2nCognomNom (Per exemple, si el teu nom és Xavier López Pujol --> 2526-ASIX-SM3-LopezPujolXavier). A aquest enllaç podreu veure si ja hi sou a la llista:

Carpetes compartides del SM3 de 1r d'ASIX. Curs 2025-2026

Estructura de les carpetes:

EH1 (depenent del subgrup)
SM1 (depenent del subgrup) collados.org
SM3
  examens
  exercicis
    C
    Python
    Encastats
  perDies

Enllaços ràpids

Compartició de pantalla

Llista de 1r d'ASIX

Totes les llistes

20260209 (2h)

  • Dubtes

Codis comentats avui a classe usuari: asix / contrasenya: asix2425

Separació d'arxius en Python

crida01.py:

# crida01.py

def nLaTevaEdat():
   return int(input("La teva edat: "))

if __name__ == "__main__":
   print("Dius tenir %d anys"%nLaTevaEdat())

principal.py:

# principal.py
import crida01

nEdat = crida01.nLaTevaEdat()
print("Heu dit que teniu %d anys"%nEdat)

principal02.py:

# principal02.py
from crida01 import nLaTevaEdat

nEdat = nLaTevaEdat()
print("Heu dit que teniu %d anys"%nEdat)

principal03.py:

# principal03.py
from crida01 import nLaTevaEdat as nIntroEdat

nEdat = nIntroEdat()
print("Heu dit que teniu %d anys"%nEdat)

Separació d'arxius en C

Exemple de separació d'arxius en C al recull d'avui

20260206 (1h)

20260202 (2h)

  • Dubtes
  • Es comença a implementar un codi per saber si una frase és un palíndrom, o no. De moment no es fa pre-processament de les dades.
  • strcpy() i strcat()
  • Pre-processament de les dades pels palíndroms emprant strcpy() i strcat()

20260130 (1h)

  • Dubtes
  • Examen sorpresa (ja no és sorpresa) de bucles, condicionals i aleatorietat.

20260126 (2h)

  • Dubtes
  • Algorisme per saber si una frase és anagrama, o no.

20260123 (1h)

  • Dubtes
  • Heu de dur fet cesar00.c basat en cesar00.py del recull del dia anterior
  • Anul·lat l'examen sorpresa de bucles, condicionals i aleatorietat. Queda posposat al proper divendres

20260119 (2h)

20260112 (2h)

  • Dubtes
  • Exercici de trobar el mínim de les temperatures entrades

20260109 (1h)

  • Dubtes
  • Seguim amb vectors

20260109 (1h)

  • Dubtes
  • Introducció als vectors (array)

20251215 (2h)

  • Dubtes
  • pi01.c
// Utilitza RAND_MAX (el màxim valor de rand()) per a una millor distribució.
// rand() / (RAND_MAX + 1.0) produeix un valor entre 0.0 i < 1.0
double lfNombreAleatori(double lfMin, double lfMax) {
   return lfMin + (lfMax - lfMin) * (rand() / (RAND_MAX + 1.0));
}
  • Vectors (arrays)

20251212 (1h)

  • Dubtes
  • Trobar número PI

20251205 (1h)

  • Dubtes
  • m4e6.c (fet m4e6.py el dia anterior)
  • Resolem m4e5.py i m4e5.c
  • Exercicis

20251201 (1h)

  • Dubtes
  • Exercicis

20251128 (1h)

  • Dubtes
  • Aleatorietat

Aleatorietat a C

#include <stdlib.h>
#include <time.h>

void vLlavorAleatorietat(){
   srand( (unsigned)time( NULL ) );
}

int nNumAleat(int nMin,int nMax){
   return nMin+ rand()% ((nMax-nMin)+1);
}

Aleatorietat a Python

Números aleatoris en Python

import random
nN = random.randint(a, b)

Retorna un enter aleatori nN, tal que a <= nN <= b. Àlies de randrange(a, b+1).

20251124 (2h)

  • Resolem m4e1.c (m4e1.py es va resoldre el darrer dia)
  • Dubtes
  • Recursivitat
  • Les torres de Hanoi:

Què són les torres de Hanoi?

Explicació de Les torres de Hanoi

Vídeo: Entendiendo la recursividad con las Torres de Hanoi

  • Seguim amb exemples

20251121 (1h)

  • Dubtes
  • Recursivitat

20251117 (2h)

  • Dubtes
  • Repàs de bucles

20251114 (1h)

  • Prova teòrica manuscrita (Heu d'escriure a la part superior: 1) Cognom1 Cognom2, Nom 2) ASIX 3) CO o JB en funció del professor que heu tingut més hores)

20251110 (1h)

>>> c = 'z'
>>> print(f"c: {c}")
c: z
>>> print(f"c: {ord(c)}")
c: 122
>>> print("c: %c"%(c))
c: z
>>> print("c: %d"%(ord(c)))
c: 122
>>> d = 121
>>> print(f"d: {d}")
d: 121
>>> print(f"d: {chr(d)}")
d: y
>>> print("c: %c"%(chr(d)))
c: y
>>> print("c: %d"%(d))
c: 121
>>>
  • Exercicis

20251031 (1h)

  • Dubtes
  • Bucles
  • Exercicis

20251024 (1h)

  • Dubtes
  • Condicionals
  • Operador ternari

20251017 (1h)

  • Dubtes
  • Condicionals

20251013 (2h)

  • Dubtes
  • Condicionals

20251006 (2h)

  • Dubtes
  • Correcció d'exercicis pendents
  • Variables booleanes i condicionals

20251003 (1h)

Codis comentats avui a classe usuari: asix / contrasenya: asix2526

20250929 (2h)

Codis comentats avui a classe usuari: asix / contrasenya: asix2526

20250926 (1h)

Codis comentats avui a classe usuari: asix / contrasenya: asix2526

Python - Computació

Fonaments de Programació. Llenguatge C/C++ (d97)

20250922 (2h)

Codis comentats avui a classe usuari: asix / contrasenya: asix2526

20250919 (1h)

Codis comentats avui a classe usuari: asix / contrasenya: asix2526

Compilador / intèrpret en línia onlinegdb.com

Snap!

Snap!

Python

Instal·lador de Python per a Windows

Convertidor de blocs a Python

Pràctiques d'introducció a Python

C

Instal·lador de C per a Windows

Using GCC with MinGW

Fonaments de programació en C

IDE

Visual Studio Code

Geany

Compilador / intèrpret en línia onlinegdb.com

Repositori de codis fet a classe durant el curs

Codis fets a les classes de 1r d'ASIX usuari: asix / contrasenya: asix2526

Algorísmica

Exercicis bàsics de pesudocodi - Ex01

Python

Pràctiques d'introducció a Python

Condicionals en Python

Condicionals amb Python

Exercicis de condicions en Python

Estructures repetitives, o bucles, en Python

Estructures repetitives, o bucles, en Python

Exercicis d'estructures de control repetitives en Python

Instal·lació del Jupyter Lab

Prova de Jupyter via web externa

Instal·lació de Jupyter Lab a la màquina virtual GNU/Linux. Des del terminal:

$ su -
# apt update
# apt install python3-pip
# exit
$ pip --version
$ pip install jupyterlab
$ pip install jupyter-c-kernel

Sortiu de la sessió i torneu-hi a entrar. Seguiu amb aquestes ordres:

$ install_c_kernel --user
$ jupyter kernelspec list

Un cop instal·lat s'executa des del terminal:

$ jupyter-lab

I apareix el navegador web amb el Jupyter Lab.

C

Fonaments de programació en C