Diferència entre revisions de la pàgina «ASIX 2023-2024»

De binefa.com
Salta a la navegació Salta a la cerca
Línia 36: Línia 36:
 
[[Pràctiques amb el robot versió 6]]
 
[[Pràctiques amb el robot versió 6]]
 
  https://docs.python.org/3/library/csv.html -->
 
  https://docs.python.org/3/library/csv.html -->
 +
== 20240214 (1h) ==
 +
[https://recull.binefa.cat/files/20240214/ Codis comentats avui a classe] usuari: ''asix'' / contrasenya: ''asix324''
 +
 +
[[Pràctiques Arduino sobre placa S4A i Snap4Arduino - 1a part]]
 +
 +
[[Pràctiques Arduino sobre placa S4A i Snap4Arduino - 2a part]]
 +
 +
[[Pràctiques amb el robot versió 6]]
 
== 20240209 (1h) ==
 
== 20240209 (1h) ==
 
[https://recull.binefa.cat/files/20240202/ Codis comentats avui a classe] usuari: ''asix'' / contrasenya: ''asix324''
 
[https://recull.binefa.cat/files/20240202/ Codis comentats avui a classe] usuari: ''asix'' / contrasenya: ''asix324''
Línia 44: Línia 52:
  
 
[[Pràctiques amb el robot versió 6]]
 
[[Pràctiques amb el robot versió 6]]
 +
 
== 20240208 (1h + 2h) ==
 
== 20240208 (1h + 2h) ==
 
[https://recull.binefa.cat/files/20240202/ Codis comentats avui a classe] usuari: ''asix'' / contrasenya: ''asix324''
 
[https://recull.binefa.cat/files/20240202/ Codis comentats avui a classe] usuari: ''asix'' / contrasenya: ''asix324''

Revisió del 17:22, 14 feb 2024

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

Carpetes compartides del SM3 de 1r d'ASIX. Curs 2023-2024

Estructura de les carpetes:

SM1 (depenent del subgrup)
SM3
  examens
  exercicis
    C
    Python
    Encastats
  perDies
  • Dins de la vostra carpeta compartida, deseu els codis generats a la subcarpeta SM3/exercicis/C. Poseu-hi allà les vostres propostes de solució. Els noms dels arxius seran alg04.c, alg06.c i alg07.c (si hi pugeu versions diferents, les podeu anomenar alg04_00.c, alg04_01.c, ...). També hi pujareu un arxiu en pdf, anomenat alg04_06_07_c.pdf amb les captures de codi més significatives (al principi, potser, serà tot el codi. Però quan els codis es facin més grans tan sols farà falta indicar la part més representativa) i les captures de llur execució. A classe comentem com fer-ho. També cal afegir l'enunciat i una captura del codi en Snap!
  • Dins de la vostra carpeta compartida, deseu els codis generats a la subcarpeta SM3/exercicis/Python. Poseu-hi allà les vostres propostes de solució. Els noms dels arxius seran alg04.py, alg06.py, alg07.py i alg08.py (si hi pugeu versions diferents, les podeu anomenar alg04_00.py, alg04_01.py, ...). També hi pujareu un arxiu en pdf, anomenat alg04_06_07_08_py.pdf amb les captures de codi més significatives (al principi, potser, serà tot el codi. Però quan els codis es facin més grans tan sols farà falta indicar la part més representativa) i les captures de llur execució. A classe comentem com fer-ho. També cal afegir l'enunciat i una captura del codi en Snap!

Algunes classes

Enllaços ràpids

Llista de 1r d'ASIX

Compartició de pantalla

20240214 (1h)

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

Pràctiques Arduino sobre placa S4A i Snap4Arduino - 1a part

Pràctiques Arduino sobre placa S4A i Snap4Arduino - 2a part

Pràctiques amb el robot versió 6

20240209 (1h)

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

Pràctiques Arduino sobre placa S4A i Snap4Arduino - 1a part

Pràctiques Arduino sobre placa S4A i Snap4Arduino - 2a part

Pràctiques amb el robot versió 6

20240208 (1h + 2h)

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

Pràctiques Arduino sobre placa S4A i Snap4Arduino - 1a part

Pràctiques Arduino sobre placa S4A i Snap4Arduino - 2a part

Pràctiques amb el robot versió 6

20240207 (1h)

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

Pràctiques Arduino sobre placa S4A i Snap4Arduino - 1a part

Pràctiques Arduino sobre placa S4A i Snap4Arduino - 2a part

Pràctiques amb el robot versió 6

20240202 (1h)

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

Pràctiques Arduino sobre placa S4A i Snap4Arduino - 1a part

Pràctiques Arduino sobre placa S4A i Snap4Arduino - 2a part

Pràctiques amb el robot versió 6

20240201 (1h + 2h)

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

Pràctiques Arduino sobre placa S4A i Snap4Arduino - 1a part

Pràctiques Arduino sobre placa S4A i Snap4Arduino - 2a part

Pràctiques amb el robot versió 6

20240129 (1h)

Pas per referència

20240126 (1h)

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

Pas per referència

Pràctiques Arduino sobre placa S4A i Snap4Arduino - 1a part

Pràctiques Arduino sobre placa S4A i Snap4Arduino - 2a part

Pràctiques amb el robot versió 6

20240125 (2h)

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

Pràctiques Arduino sobre placa S4A i Snap4Arduino - 1a part

Pràctiques Arduino sobre placa S4A i Snap4Arduino - 2a part

Pràctiques amb el robot versió 6

20240124 (1h)

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

Pràctiques Arduino sobre placa S4A i Snap4Arduino - 1a part

Pràctiques Arduino sobre placa S4A i Snap4Arduino - 2a part

Pràctiques amb el robot versió 6

20240119 (1h)

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

20240118 (1h + 2h)

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

  • millis()

20240117 (1h)

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

Operadors: ! (negació a nivell de variable), ~ (negació a nivell de bit), & (operació lògica i) i | (operació lògica o)

Visualització pel monitor sèrie de forma decimal (Serial.println(n,DEC)) i hexadecimal (Serial.print(n,HEX)).

 byte by = 0x00;

 by |= (bBotoPremut(BOTO_A4))? 0x08:0x00;
 by |= (bBotoPremut(BOTO_A5))? 0x04:0x00;
 by |= (bBotoPremut(BOTO_3))? 0x02:0x00;
 by |= (bBotoPremut(BOTO_2))? 0x01:0x00;
 Serial.print("Hexadecimal: 0x0");
 Serial.println(by,HEX);
 Serial.print("Binari: 0b");
 Serial.println(by,BIN);
 Serial.print("Decimal: ");
 Serial.println(by,DEC);
 Serial.print("Octal: 0"); // 0 at the beginning: https://learn.adafruit.com/deciphering-strange-arduino-code/octal
 Serial.println(by,OCT);
 Serial.print("Binari negat bit a bit: 0b");
 Serial.println(~by,BIN); // 4 bytes
 Serial.print("Binari negat bit a bit: 0b");
 Serial.println((byte)~by,BIN); // byte: limitem a 8 el nombre d'1s i 0s
 Serial.print("Binari negat a nivell de byte: 0b");
 Serial.println((byte)!by,BIN); // byte: limitem a 8 el nombre d'1s i 0s
 Serial.print("Hexadecimal negat bit a bit: 0x0");
 Serial.println(~by,HEX);
 Serial.print("Hexadecimal negat a nivell de byte: 0x");
 Serial.println(!by,HEX); // 4 bytes
 Serial.println((byte)!by,HEX); // 1 byte

Uns i zeros mitjançant selector (Simulat emprant TinkerCad)

Pràctiques Arduino sobre placa S4A i Snap4Arduino - 1a part

Pràctiques Arduino sobre placa S4A i Snap4Arduino - 2a part

20240112 (1h)

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

Pràctiques Arduino sobre placa S4A i Snap4Arduino - 1a part

20240111 (1h + 2h)

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

  • Monitor sèrie (Serial Monitor)
  • Repàs del dia anterior:

- Serial.begin()

- Serial.println()

Serial.println(__FILE__);

- Serial.print()

- Serial.read()

  • Alguns exemples:

Potenciòmetre controlant la posició d'un servo emprant Arduino Uno

Exemple de control de 31 servos

Exemple emprant un mesurador d'ultrasons

Un altre exemple emprant ultrasons

Visualització gràfica d'inclinacions i acceleracions. Arduino Uno + MPU6050 al Wokwi

Pantalla OLED

20240110 (1h)

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

Introducció a Arduino

Serial.println(__FILE__);


Pràctiques Arduino sobre placa S4A i Snap4Arduino - 1a part

20231220 (2h + 1h)

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

Introducció a Arduino

Simulació dels 4 leds i 4 botons de la placa S4A

Simulació dels 4 leds i 4 botons de la placa S4A, permetent prémer més d'un botó alhora

Pràctiques Arduino sobre placa S4A i Snap4Arduino - 1a part

20231215 (1h)

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

Seguim amb els temes pendents d'ahir.

20231214 (1h + 2h)

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

Exercicis de recursivitat. (m4p01.c, m4p02.c, m4e1.c, m4e2.c i m4e2.py)

La depuració en C emprant gdb

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

20231213 (1h)

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

Exercicis d'algorísmica alg01 (en Python) i alg07 (en Python i C). (Exercicis bàsics de pesudocodi)

20231201 (1h)

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

Afegir elements a una llista en Python

20231124 (1h)

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

Seguim amb nombres aleatoris.

Exercicis d'estructures de control repetitives en Python

20231123 (1h + 2h)

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

Seguim amb nombres aleatoris.

20231122 (1h)

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

Nombres aleatoris.

20231117 (1h)

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

20231116 (1h + 2h)

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

20231115 (1h)

Codis comentats avui a classe usuari: daw / contrasenya: asix2324

20231110 (1h)

Codis comentats avui a classe usuari: daw / contrasenya: asix2324

20231109 (1h + 2h)

Codis comentats avui a classe usuari: daw / contrasenya: daw2324

El proceso de búsqueda de empleo | Flipped FOL: Búsqueda de empleo y relaciones laborales (Suplència Sandra)

20231108 (1h)

Codis comentats avui a classe usuari: daw / contrasenya: daw2324

Exercicis de condicions en Python

Exercicis d'estructures de control repetitives en Python

20231103 (1h)

Codis comentats avui a classe usuari: daw / contrasenya: daw2324

20231102 (1h + 2h)

Codis comentats avui a classe usuari: daw / contrasenya: daw2324

20231027 (1h)

Codis comentats avui a classe usuari: daw / contrasenya: daw2324

Condicionals amb Python

20231026 (1h + 2h)

Codis comentats avui a classe usuari: daw / contrasenya: daw2324

EAC02

Feu un programa en llenguatge C i Python que demani un valor en graus Fahrenheit i els converteixi a graus Kelvin.

K = (F − 32) × 5 ⁄ 9 + 273.15 (recordeu quan posavem 1./2)

Dins del programa, a la primera línia comentada posa el teu nom i cognoms.

El fitxer que m'enviaràs ( carles[punt]olive[arrova]fje[punt]edu) en C es dirà EAC02-ASIX-cognom_nom.c i en Python EAC02-ASIX-cognom_nom.py.txt.

20231025 (1h)

Codis comentats avui a classe usuari: daw / contrasenya: daw2324

  • Canvieu m2p08.c a un m2p08.c emprant l'estil fet servir classe.
  • Traduïu m2p08.c a m2p08.py

Seguim amb les funcions.

20231020 (1h)

Seguim amb la introducció a les funcions.

20231019 (1h + 2h)

Seguim amb la introducció a les funcions.

20231018 (1h)

Introducció a les funcions.

20231011 (1h)

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

Mirem la pràctica de generació de la lletra del DNI/NIF i seguim fent exercicis.

20231006 (1h)

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

20231005 (1h + 2h)

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

Fem m1e6 i m1e7 en Python i C.

20231004 (1h)

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

Hem fet m1e5.py i m1e5.c

20230929 (1h)

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

Explicació de com implementar potències (funció pow) per a poder resoldre l'exercici m1e5

20230928 (1h + 2h)

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

Fets els exercicis m1e3 i m1e4 en C i Python

20230927 (1h)

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

20230922 (1h)

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

20230921 (1h+2h)

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

20230920 (1h)

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

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 de DAW usuari: daw / contrasenya: daw2324

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

Eines en línia

Recull de codis fets a classe usuari / contrasenya : asix / asix2122

Disseny de diagrames de flux en línia

Snap! o Snap! personalitzat

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

Arduino Blocks

MinGW - Compilador de C per a Windows

Vídeo de particions en línia d'ordres

EduBlocks