DAW 2021-2022
Quan tingueu les credencials d'accés a la NET heu de compartir-nos (als dos professors) una carpeta amb aquest nom: 2122-DAW-M03-1rCognom2nCognomNom (Per exemple, si el teu nom és Xavier López Pujol --> 2122-DAW-M03-LopezPujolXavier). A aquest enllaç podreu veure si ja hi sou a la llista:
Carpetes compartides del M03 de 1r de DAW. Curs 2021-2022
Algunes classes
Teleconferència
Teleconferència provisional per a compartir pantalles a classe i per a confinats
20211014
Codis comentats avui a classe usuari: daw / contrasenya: daw2122
Per a fer una potència en C es fa servir la funció pow() (que li cal l'arxiu de capçalera math.h i, per tant, requereix afegir a la compilació el paràmetre -lm):
lfBase ^ lfExponent => pow(lfBase,lfExponent)
Per a fer una potència en Python es fa servir l'operador **:
lfBase ^ lfExponent => lfBase**lfExponent
En Python:
- Exercicis 3, 4, 5, 6 i 7 dels exercicis de C del mòdul 1 del d97. Dins de la vostra carpeta compartida, feu la subcarpeta Exercicis/Python. Poseu-hi allà les vostres propostes de solució. Els noms dels arxius seran m1e3.py, m1e4.py, m1e5.py, m1e6.py i m1e7.py (si hi pugeu versions diferents, les podeu anomenar m1e7_00.py, m1e7_01.py, ...). També hi pujareu un arxiu en pdf, anomenat m1e3_7_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.
En C:
Al resum teòric del mòdul 2 del d97 destaquem:
- Tipus de variables
- Constants:
12312 constant tipus int 54154551145 constant no vàlida 54154551145. constant tipus double 1.25f constant tipus float 1.25l constant tipus long double
- Operadors:
- Operadors aritmètics:
- Canvia el signe (és un operador unari, és a dir, actua només sobre un operant) + Suma - Resta * Producte / Divisió % Residu (residu de la divisió entera) & i a nivell de bit | o a nivell de bit ~ Negador a nivell de bit
- Operadors d'assignació:
nom_variable = expressió; a = a+1; a += b significa a = a + b a -= b significa a = a – b a *= b significa a = a * b a /= b significa a = a / b a %= b significa a = a % b
- Operadors incrementals:
a = 2; b = a++; /* a = 3 i b = 2 */ b = ++a; /* a = 3 i b = 3 */
- Operadors relacionals:
== Igual que (no confondre amb l'operador d'assignació =) < Menor que > Major que <= Menor o igual que >= Major o igual que != Diferent que
- Operadors lògics:
! Negador a nivell de valor lògic (0 es fals. Qualsevol altra número és cert) && i lògica || o lògica
- Altres operadors
operador unari: + no fa res, però serveix com a complement de l'operador unari -. operador sizeof(): torna la mida del tipus, variable o expressió introduït com argument. operador , (coma): serveix per avaluar expressions múltiples. El seu ús més freqüent és en expressions de la sentència for.
20211008
Codis comentats avui a classe usuari: daw / contrasenya: daw2122
Compilació amb l'arxiu de capçalera math.h:
gcc m1p06.c -o m1p06 -lm
Per a fer una potència en C es fa servir la funció pow():
lfBase ^ lfExponent => pow(lfBase,lfExponent)
En C:
- Exercicis 3, 4, 5, 6 i 7 dels exercicis de C del mòdul 1 del d97. Dins de la vostra carpeta compartida, feu la subcarpeta Exercicis/C. Poseu-hi allà les vostres propostes de solució. Els noms dels arxius seran m1e3.c, m1e4.c, m1e5.c, m1e6.c i m1e7.c (si hi pugeu versions diferents, les podeu anomenar m1e7_00.c, m1e7_01.c, ...). També hi pujareu un arxiu en pdf, anomenat m1e3_7.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.
20211007
Codis comentats avui a classe usuari: daw / contrasenya: daw2122
Python
Fem servir el Jupyter Lab des de la màquina virtual. Des del terminal:
jupyter-lab
Accés directe a 20211007_py.html i accés directe a 20211007_py_02.html
C
- Implementació en C dels dos darrers exercicis d'aquest enllaç
- Implementació en C de l'exercici 5 de la col·lecció d'exercicis de pseudocodi
- Exercicis 3, 4, 5, 6 i 7 dels exercicis de C del mòdul 1 del d97. Dins de la vostra carpeta compartida, feu la subcarpeta Exercicis/C. Poseu-hi allà les vostres propostes de solució. Els noms dels arxius seran m1e3.c, m1e4.c, m1e5.c, m1e6.c i m1e7.c (si hi pugeu versions diferents, les podeu anomenar m1e7_00.c, m1e7_01.c, ...). També hi pujareu un arxiu en pdf, anomenat m1e3_7.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.
20211005
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.
Codis 00_py_intro:
Codis 00_C_intro:
Seguim amb la Introducció bàsica a Python
20211001
Teleconferència provisional pel dia 20211001
20210930
Teleconferència provisional pel dia 20210930
20210928
Teleconferència provisional pel dia 20210928
20210923
Adreça de la teleconferència per al dia d'avui
Codis comentats avui a classe usuari: daw / contrasenya: daw2122
20210921
Codis comentats avui a classe usuari: daw / contrasenya: daw2122
Repositori de codis fet a classe durant el curs
Codis fets a les classes de 1r de DAW usuari: daw | contrasenya: daw2122
Pràctiques d'introducció a Python
Algorísmica
Exercicis bàsics de pesudocodi - Ex01
Python
Pràctiques d'introducció a Python
Condicionals en 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
C
Eines en línia
Recull de codis fets a classe usuari / contrasenya : daw / daw2122
Disseny de diagrames de flux en línia