Diferència entre revisions de la pàgina «DAW 2021-2022»

De binefa.com
Salta a la navegació Salta a la cerca
Línia 27: Línia 27:
  
 
* Fem la implementació del dígit de verificació d'un codi de barres present a [https://recull.binefa.cat/files/doc/digits_de_control.pdf algorismes de dígits de control]
 
* Fem la implementació del dígit de verificació d'un codi de barres present a [https://recull.binefa.cat/files/doc/digits_de_control.pdf algorismes de dígits de control]
 +
 +
* [http://www.xtec.cat/formaciotic/ateneu_historic/materials/td97/d97m5/d97m5te.htm Teoria d'apuntadors]
  
 
== 20211217 ==
 
== 20211217 ==

Revisió del 16:25, 21 des 2021

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

Estructura de les carpetes:

M01 (depenent del subgrup)
M03
  examens
  exercicis
    C
    Python
  perDies
M14

Algunes classes

Llista de 1r de DAW

Codis comentats avui usuari: daw / contrasenya: daw2122

Teleconferència

Teleconferència provisional per a compartir pantalles a classe i per a confinats

20211221

Recull de codis comentats avui usuari: daw / contrasenya: daw2122

  • Dubtes pendents

20211217

Recull de codis comentats avui usuari: daw / contrasenya: daw2122

  • Dubtes pendents

Examen EAC06_nom_cognom_DAW1.c

Feu un programa, que us demani un número corresponent a un mes i us digui quin mes és.

Us ha de dir també quants dies té (el mes de febrer es considera de 28 dies).

Heu de filtrar que no sigui inferior a 1 ni superior a 12, cas en què contestarem "número de mes incorrecte" i ho haurà de tornar a preguntar.

Exemple:

Mes 1------> Correspon al mes de gener i té 31 dies.

20211216

Recull de codis comentats avui usuari: daw / contrasenya: daw2122

  • Dubtes pendents

Tornem a repassar llistes i tuples:

Teoria de llistes i tuples

Els codis tindran el nom llista14.py, llista17.py fins a arribar a llista26.py (si feu servir el Jupyter Lab escriviu, comentat a la primera línia, el nom del codi. També haureu d'afegir una exportació en html a la carpeta compartida). Feu un document llistaPython.pdf a on hi surtin els codis comentats i llurs execucions. Deseu-lo a una subcarpeta anomenada llistes dins de la subcarpeta Python a la carpeta compartida.

20211210

Recull de codis comentats avui usuari: daw / contrasenya: daw2122

  • Dubtes pendents
  • Seguim amb la implementació del dígit de verificació de les targetes de crèdit, fent servir vectors (arrays) d'enters, present a algorismes de dígits de control. Al recull del codi d'avui hi ha targetaCredit_01_00.c amb el codi comentat a les parts clau.
  • Feina pendent de pujar dels exercicis de M2 i M3 de la col·lecció d'exercicis del d97

De la classe de l'11 de novembre hi havia aquests enunciats:

Feu els exercicis 5 i 6 d'aquesta col·lecció d'exercicis (m2e5.png, m2e5.xml, m2e5.py, m2e5.c, m2e6.png, m2e6.xml, m2e6.py i m2e6.c)

Un cop acabat els anteriors farem els exercicis 1, 3 i 8 d'aquesta col·lecció d'exercicis (m3e1.png, m3e1.xml, m3e1.py, m3e1.c, m3e3.* i m3e8.* . Essent * .png, .xml, .py i .c)

- Dins de la vostra carpeta compartida, deseu els codis generats a la subcarpeta M03/exercicis/C/m2_m3. Poseu-hi allà les vostres propostes de solució. Els noms dels arxius seran m2e5.c, m2e6.c, m3e1.c, m3e3.c i m3e8.c (si hi pugeu versions diferents, les podeu anomenar m2e5_00.c, m2e5_01.c, ...). També hi pujareu un arxiu en pdf, anomenat m2_m3_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ó. 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 M03/exercicis/Python/m2_m3. Poseu-hi allà les vostres propostes de solució. Els noms dels arxius seran m2e5.py, m2e6.py, m3e1.py, m3e3.py i m3e8.py (si hi pugeu versions diferents, les podeu anomenar m2e5_00.py, m2e5_01.py, ...). També hi pujareu un arxiu en pdf, anomenat m2_m3_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ó. Si feu servir el Jupyter Lab, no pujareu els arxius .py sinó l'arxiu .ipynb i l'exportació a html. També cal afegir l'enunciat i una captura del codi en Snap!

  • Feina pendent de pujar dels exercicis del M4 de la col·lecció d'exercicis del d97

De la classe del 23 de novembre hi havia aquest enunciats:

Seguint la manera de pujar els arxius al M2 i M3, fareu les supcarpetes M03/exercicis/C/m4 i M03/exercicis/Python/m4. Poseu-hi allà les vostres propostes de solució. A la part de C tindreu l'arxiu m4_c.pdf i a la de Python m4_py.pdf. A ambdós documents hi haurà les captures de codi més importants i les diverses execucions possibles que il·lustrin les diferents possibilitats dels programes que heu desenvolupat. A la part de C també hi haurà els codis amb extensió .c i a les de Python amb extensió .py si feu servir un editor com el VSCode o l'arxiu .ipynb i l'exportació a html en cas de fer servir Jupyter Lab. Cal afegir l'enunciat. En aquesta part no cal que feu servir Snap!.

Examen EAC05_nom_cognom_DAW1.c

Realitzeu un programa que demani una lletra minúscula de l'abecedari i la transformi a majúscula , una majúscula a minúscula, qualsevol caràcter que no sigui una lletra avisarem dient NO ÉS UNA LLETRA i vagi ensenyant les lletres següents una a una en línies diferents, a intervals d'un segon, fins a arribar a la 'Z' on el programa pararà.

Si la lletra és la 'a', ens mostrarà 'A',si la lletra és la 'A', ens mostrarà 'a' i totes les lletres línia a línia fins a la 'z' o la 'Z'.

Si la lletra és la 'z' o 'Z' la transformarà i pararà immediatament.

Verbigràcia:

Introdueix una lletra de l'abecedari: x

X

Y

Z

20211209

  • Dubtes pendents i repàs.

Codis comentats avui usuari: daw / contrasenya: daw2122

Python (llistes i tuples)

Teoria de llistes i tuples

Els codis tindran el nom llista14.py, llista17.py fins a arribar a llista26.py (si feu servir el Jupyter Lab escriviu, comentat a la primera línia, el nom del codi. També haureu d'afegir una exportació en html a la carpeta compartida). Feu un document llistaPython.pdf a on hi surtin els codis comentats i llurs execucions. Deseu-lo a una subcarpeta anomenada llistes dins de la subcarpeta Python a la carpeta compartida.

C (vectors)

20211203

  • Dubtes pendents i repàs.
  • Passar de majúscules a minúscules i a l'inrevès.

Codis comentats avui usuari: daw / contrasenya: daw2122

Examen EAC04_nom_cognom_DAW1.c

Realitzeu un programa que demani una lletra minúscula de l'abecedari i la transformi a majúscula, vagi ensenyant les lletres següents una a una en línies diferents, a intervals d'un segon, fins a arribar a la 'Z' on el programa pararà.

Si la lletra és la 'a', ens mostrarà 'A' i totes les lletres línia a línia fins a la 'Z'.

Si la lletra és la 'z' la transformarà a majúscula i pararà immediatament.

Verbigràcia:

Introdueix una lletra de l'abecedari: x

X

Y

Z

20211202

  • Dubtes pendents i repàs.
  • Concepte de vectors (array). Vector de nombres reals.
  • Exercici en C que pregunta el nombre de dies (màxim de 7) per a fer la mitjana de les temperatures del nombre de dies entrat (al recull hi ha els tres codis fet a classe).

Codis comentats avui usuari: daw / contrasenya: daw2122

20211130

  • Dubtes pendents i repàs.

Codis comentats avui usuari: daw / contrasenya: daw2122

20211126

Dubtes pendents.

La depuració

Codis comentats avui usuari: daw / contrasenya: daw2122

Examen EAC04_nom_cognom_DAW1.c

Feu un programa que faci la pregunta a sota indicada i tingui cinc possibles respostes i només una de correcta.

Quina és la velocitat de llum?, escriu una opció, de la 1 a la 5:

1-La velocitat de la llum és 300.000 quilòmetres/segon.
2-La velocitat de la llum és 343,2 metres/segons.
3-La velocitat de la llum és de 300.000 quilòmetres/hora.
4-Cap dels anteriors.
5-Totes les anteriors són correctes.

Quan contesteu una resposta incorrecta,hem de contestar------> T'has equivocat... i tornes a preguntar.

Si la persona s'ha equivocat més de tres cops,hem de contestar------> Hauries d'estudiar més... i acabem.

Si ens posa un número inferior a 1 o superior a 5,hem de contestar-----> Opció no disposada, tria de la 1 a la 5 i tornes a preguntar.

Recorda utilitzar while(1) o for(;;) i break per sortir.

EAC04_nom_cognom_DAW1.c

20211125

Codis comentats avui usuari: daw / contrasenya: daw2122

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);
}

20211123

Codis comentats avui usuari: daw / contrasenya: daw2122

20211119

Seguim fent els exercicis plantejats el dia anterior.

Codis comentats avui usuari: daw / contrasenya: daw2122

20211118

Seguim fent els exercicis plantejats el dia anterior.

Codis comentats avui usuari: daw / contrasenya: daw2122

20211116

Seguim fent els exercicis plantejats el dia anterior.

Codis comentats avui usuari: daw / contrasenya: daw2122

20211112

Seguim fent els exercicis plantejats el dia anterior.

Codis comentats avui usuari: daw / contrasenya: daw2122

Examen EAC03_nom_cognom_DAW1.c

Es tracta de fer un programa que calculi la mitjana aritmètica de 8 notes aconseguides en programació.

Demanarem primer el nom de l'alumne.

Segon preguntarem el curs que fa.

Tercer preguntarem les 8 notes obtingudes seguides d'un Enter.

Quart calcularem la mitjana aritmètica.

Cinquè i darrer contestarem:

Bé <nom de l'alumne> de <curs que fa> la teva mitja aritmètica de les teves 8 notes és:_______

Realitzarem la captura i suma de les notes mitjançant un For.

Deseu a la carpeta compartida l'arxiu EAC03_nom_cognom_DAW1.c i el document EAC03_nom_cognom_DAW1.pdf (canvieu nom pel vostre nom i cognom pel vostre cognom). Heu de trametre els dos arxius (.c i .pdf) a l'adreça carles(punt)olive(arrova)fje(punt)edu

20211111

Seguim fent els exercicis plantejats el dia anterior.

Codis comentats avui usuari: daw / contrasenya: daw2122

Un cop acabat els anteriors farem els exercicis 5 i 6 d'aquesta col·lecció d'exercicis (m2e5.png, m2e5.xml, m2e5.py, m2e5.c, m2e6.png, m2e6.xml, m2e6.py i m2e6.c)

Un cop acabat els anteriors farem els exercicis 1, 3 i 8 d'aquesta col·lecció d'exercicis (m3e1.png, m3e1.xml, m3e1.py, m3e1.c, m3e3.* i m3e8.* . Essent * .png, .xml, .py i .c)

20211109

Seguim fent eles exercicis plantejats el dia anterior.

Codis comentats avui usuari: daw / contrasenya: daw2122

20211105

Les funcions a Snap! es diuen blocs. Baixeu-vos els codis blocsSnap_01.xml i blocsSnap_02.xml del recull de codis comentats avui, i analitzem llurs blocs.

Codis comentats avui usuari: daw / contrasenya: daw2122

Seguim fent els exercicis del darrer dia:

Implementeu en Snap!, Python i C els exercicis 4, 6, 7 i 8 (no feu en C el 8) de la col·lecció d'exercicis bàsics de pesudocodi

  • Dins de la vostra carpeta compartida, deseu els codis generats a la subcarpeta M03/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 M03/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!

Examen EAC02_nom_cognom_DAW1.c

Realitzeu un programa que segueixi la seqüència següent:

Introduïu un número que fa de codi d'accés: (Que serà 14822)

en cas d'encertar-lo demanarà:

Com et dius? Posarem el nom i contestarà:

Molt bé <el nom que hagis posat> , estàs autoritzat.

Després sortirà del programa.

Si en introduir el codi d'accés és erroni, contestarà: Prova-ho una altra vegada.

Després ho tornarà a preguntar, fent servir un bucle while, do-while o for, fins que s'encerti. Després posarem el nom i contestarà:

Per fi ho has aconseguit! Molt bé <el nom que hagis posat> , estàs autoritzat.

Després sortirà del programa.

Deseu a la carpeta compartida l'arxiu EAC02_nom_cognom_DAW1.c i el document EAC02_nom_cognom_DAW1.pdf (canvieu nom pel vostre nom i cognom pel vostre cognom). Heu de trametre els dos arxius (.c i .pdf) a l'adreça carles(punt)olive(arrova)fje(punt)edu

20211104

Codis comentats avui usuari: daw / contrasenya: daw2122

Estructures repetitives en Python

#ifdef, #ifndef, #else i #endif

Implementeu en Snap!, Python i C els exercicis 4, 6, 7 i 8 (no feu en C el 8) de la col·lecció d'exercicis bàsics de pesudocodi

  • Dins de la vostra carpeta compartida, deseu els codis generats a la subcarpeta M03/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 M03/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!

Com esperar

Des del sistema operatiu:

En Linux:

sleep 5

essent 5 el nombre de segons que s'espera.

En Windows:

timeout 5

essent 5 el nombre de segons que s'espera.

Funcions d'espera de temps multiplataforma:

En C:

#include <stdio.h>

#define LINUX

#ifdef LINUX
   #include <unistd.h>
#else
   #include <Windows.h>
#endif

int main(){
   int nS;
   char szOrdre[99];
   
   printf("Nombre de segons a esperar: ");
   scanf("%d",&nS);
   sleep(nS); // A Linux són segons i a Windows són milisegons
   printf("S'ha acabat l'espera de %d segons\n",nS);

   return 0;
}

En Python:

import time # Per a fer servir sleep()

nS = int(input("Nombre de segons a esperar: "))
time.sleep(nS)
print("S'ha acabat l'espera de %d segons"%nS)

20211102

Estructures repetitives en Python

Funcions

20211029

Lleis de Morgan:

!(a&b) = !a | !b
!(a|b) = !a & !b

Codis comentats avui usuari: daw / contrasenya: daw2122

Examen EAC01_nom_cognom_DAW1.c

Realitzeu un programa que segueixi la seqüència següent:

Introduïu un número que fa de codi d'accés: (Que serà 12346)

en cas d'encertar-lo demanarà:

Com et dius? Posarem el nom i contestarà:

Molt bé <el nom que hagis posat> , estàs autoritzat.

Després sortirà del programa.

Si en introduir el codi d'accés és erroni, contestarà: Prova-ho una altra vegada.

Després sortirà del programa.

Deseu a la carpeta compartida l'arxiu EAC01_nom_cognom_DAW1.c i el document EAC01_nom_cognom_DAW1.pdf (canvieu nom pel vostre nom i cognom pel vostre cognom). Heu de trametre els dos arxius (.c i .pdf) a l'adreça carles(punt)olive(arrova)fje(punt)edu

20211028

Estructures repetitives en Python

Codis comentats avui usuari: daw / contrasenya: daw2122

C

switch i operador ternari.

Exercicis de condicionals en C. (comentem cond06.c)

cond01.c) Feu un programa que demani dos números, 'a' i 'b', i us digui si la seva suma és positiva, negativa o zero.

cond02.c) Escriviu un programa que llegeixi un número i us digui si és parell o senar.

cond03.c) Escriviu un programa que demani un nombre enter entre un i dotze i imprimeixi el nombre de dies que té el mes corresponent.

No hi ha cond04.c (El codi en C equivalent al de Python requereix d'uns coneixements que no s'han explicat encara)

cond05.c) Escriviu un programa que llegeixi un any i us digui si és de traspàs. (Considerarem any és de traspàs si és un número divisible per 4, però no si és divisible per 100, excepte que també sigui divisible per 400)

cond06.c) Feu un programa que llegeixi un caràcter pel teclat i comprovi si és una lletra majúscula.

  • Dins de la vostra carpeta compartida, deseu els codis generats a la subcarpeta M03/exercicis/C. Poseu-hi allà les vostres propostes de solució. Els noms dels arxius seran cond01.c, cond02.c, cond03.c, cond05.c i cond06.c (si hi pugeu versions diferents, les podeu anomenar cond02_00.c, cond02_01.c, ...). També hi pujareu un arxiu en pdf, anomenat condicionals_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.

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).

20211026

Estructures repetitives en Python

Codis comentats avui usuari: daw / contrasenya: daw2122

20211022

Més exercicis de condicionals en C.

Estructures repetitives en Python

Estructures repetitives en C

Codis comentats avui usuari: daw / contrasenya: daw2122

20211021

Actualització de l'estructura de carpetes a la carpeta compartida.

Condicionals amb Python. Revisem el not (l'equivalent en C eś el signe d'admiració !).

C

cond01.c) Feu un programa que demani dos números, 'a' i 'b', i us digui si la seva suma és positiva, negativa o zero.

cond02.c) Escriviu un programa que llegeixi un número i us digui si és parell o senar.

cond03.c) Escriviu un programa que demani un nombre enter entre un i dotze i imprimeixi el nombre de dies que té el mes corresponent.

No hi ha cond04.c (El codi en C equivalent al de Python requereix d'uns coneixements que no s'han explicat encara)

cond05.c) Escriviu un programa que llegeixi un any i us digui si és de traspàs. (Considerarem any és de traspàs si és un número divisible per 4, però no si és divisible per 100, excepte que també sigui divisible per 400)

cond06.c) Feu un programa que llegeixi un caràcter pel teclat i comprovi si és una lletra majúscula.

  • Dins de la vostra carpeta compartida, deseu els codis generats a la subcarpeta M03/exercicis/C. Poseu-hi allà les vostres propostes de solució. Els noms dels arxius seran cond01.c, cond02.c, cond03.c, cond05.py i cond06.py (si hi pugeu versions diferents, les podeu anomenar cond02_00.c, cond02_01.c, ...). També hi pujareu un arxiu en pdf, anomenat condicionals_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.

Python

Condicionals amb Python

  • Exercicis de condicions en Python. Dins de la vostra carpeta compartida, feu la subcarpeta M03/exercicis/Python. Poseu-hi allà les vostres propostes de solució. Teniu dues opcions per a penjar el codi:
    • 1) Els noms dels arxius seran cond01.py, cond02.py, cond03.py, cond04.py, cond05.py i cond06.py (si hi pugeu versions diferents, les podeu anomenar cond04_00.py, cond04_01.py, ...). També hi pujareu un arxiu en pdf, anomenat condicionals_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.
    • 2) Pugeu els arxius condicionals_py.ipynb (arxiu del jupyter-lab) i condicionals_py.htm (arxiu exportat del jupyter-lab). També hi pujareu un arxiu en pdf, anomenat condicionals_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.


Codis comentats avui usuari: daw / contrasenya: daw2122

20211019

Codis fets avui usuari: daw / contrasenya: daw2122

Condicionals amb Python

Exercicis de condicions en Python

20211015

Operadors relacionals: m2p06.c

Comencem per la pràctica m2p05.c

Exercici 4 del mòdul 2 del d97

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 M03/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:

Introducció a C - 2a part

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 M03/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

  • 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 M03/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:

00_py_intro.ipynb(Vista web)

Codis 00_C_intro:

00_C_intro.ipynb(Vista web)


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

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

C

Fonaments de programació en C

Eines en línia

Recull de codis fets a classe usuari / contrasenya : daw / daw2122

Disseny de diagrames de flux en línia

Snap! o Snap! personalitzat

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

Arduino Blocks