2n SMX-A per dies. Curs 2020-2021
Contingut
- 1 Horari a partir del 18 de gener
- 2 Teleconferència
- 3 Algunes classes
- 3.1 20210514
- 3.2 20210504
- 3.3 20210430 Inici del Projecte Final (2h presencial)
- 3.4 20210423 (2h presencial) Examen ordinària M14UF1
- 3.5 20210416 (2h presencial)
- 3.6 20210409 (2h presencial)
- 3.7 20210326 (2h presencial)
- 3.8 20210319 (2h presencial)
- 3.9 20210312 (2h presencial)
- 3.10 20210305 (2h presencial)
- 3.11 20210226 (2h presencial)
- 3.12 20210219 (2h presencial)
- 3.13 20210212 (2h presencial)
- 3.14 20210205 (2h presencial)
- 3.15 20210129 (2h presencial)
- 3.16 20210122 (2h presencial)
- 3.17 20210120 (1h síncrona)
- 3.18 20210115 (1h presencial)
- 3.19 20210113 (1h síncrona)
- 3.20 20201218 (1h presencial)
- 3.21 20201216 (1h síncrona)
- 3.22 20201211 (1h presencial)
- 3.23 20201204 (1h presencial) Darrer dia de lliurament
- 3.24 20201202 (1h síncrona)
- 3.25 20201127 (1h presencial)
- 3.26 20201125 (1h síncrona)
- 3.27 20201120 (1h presencial)
- 3.28 20201118 (síncrona)
- 3.29 20201113 (presencial)
- 3.30 20201111 (síncrona)
- 3.31 20201106
- 3.32 20201030
- 3.33 20201023
- 3.34 20201016
- 3.35 20201009
- 3.36 20201002
- 3.37 20200925
- 3.38 20200922
- 3.39 20200918
Horari a partir del 18 de gener
Teleconferència
Adreça de la teleconferència al curs 2020-2021
Heu d'entrar amb les credencials de la NET. Si feu la sol·licitud des d'un compte extern serà denegat l'accés.
Llista de 2n d'SMX-A 2020-2021
Carpetes compartides 2n d'SMX-A. Curs 2020-2021
Algunes classes
20210514
Anem fent el Projecte Final de 2n d'SMX - Curs 2020-2021
20210504
Anem fent el Projecte Final de 2n d'SMX - Curs 2020-2021
20210430 Inici del Projecte Final (2h presencial)
Anem fent el Projecte Final de 2n d'SMX - Curs 2020-2021
20210423 (2h presencial) Examen ordinària M14UF1
Feu aquests exercicis (diagrama de flux, edublocks i Python sobre onlinegdb):
Campionats d'atletisme
El nom de el programa és SMX2A_campionat_Atletisme_1rCognom_2nCognom_Nom
En un Campionat d'Atletisme es mesuren les marques dels corredors de les diferents categories en segons perquè resulta apropiat per emmagatzemar-ho a un suport informàtic. Però, resulta molt incòmode per als aficionats llegir les marques en segons. Per aquesta raó, es desitja un programa que llegeixi un temps expressat en segons i mostri la seva equivalència en hores, minuts i segons. Per exemple, si s'introdueix 4550 segons, ha de mostrar 1 hora, 15 minuts i 50 segons.
Pista
jordi@iot-clot:~$ python3 Python 3.9.2 (default, Feb 28 2021, 17:03:44) [GCC 10.2.1 20210110] on linux Type "help", "copyright", "credits" or "license" for more information. >>> 7300//3600 2 >>> 7300%3600 100 >>> 100//60 1 >>> 100%60 40 >>> 2*3600+1*60+40 7300 >>> quit()
>>> totalSegons=7300 >>> hores=totalSegons//3600 >>> segons=totalSegons%3600 >>> minuts=segons//60 >>> segons=segons%60 >>> print("%d hores %d minuts %d segons"%(hores,minuts,segons)) 2 hores 1 minuts 40 segons
Rock, Paper, Scissors
El nom de el programa és SMX2A_Pedra_Paper_Tisora_1rCognom_2nCognom_Nom. Heu de fer el diagrama de flux, edublocks i Python sobre onlinegdb.
- Feu un programa que tregui 0, 1 o 2 de manera aleatòria
- Feu un programa que tregui R, P o S de manera aleatòria
- Feu que el programa pensi tres cops R, P o S (un bucle de tres cops). I mostri el resultat pensat cada cop. No s'ha de repetir tres cops. S'ha de fer servir un bucle de repetició (for o while).
- Feu que l'usuari competeixi contra l'ordinador. A cada iteració, de les tres, ha de dir si l'usuari guanya, perd o empata amb l'ordinador.
- Afegiu al final si l'usuari guanya, perd o empata amb l'ordinador. Haureu de posar una variable comptadora del nombre de cops que guanya l'usuari.
20210416 (2h presencial)
Pes ideal
El nom de el programa és SMX2A_endocrinologia_1rCognom_2nCognom_Nom
Enunciat:
El servei d'endocrinologia d'un hospital necessita un programa per calcular el pes recomanat d'una persona. Feu un programa que llegeixi l'altura en centímetres, l'edat de la persona i realitzi el càlcul del pes recomanat segons la següent fórmula:
Pes = (alçada en centímetres-100 + 10% de l'edat) * 0,9
Campionats d'atletisme
El nom de el programa és SMX2A_campionat_Atletisme_1rCognom_2nCognom_Nom
En un Campionat d'Atletisme es mesuren les marques dels corredors de les diferents categories en segons perquè resulta apropiat per emmagatzemar-ho a un suport informàtic. Però, resulta molt incòmode per als aficionats llegir les marques en segons. Per aquesta raó, es desitja un programa que llegeixi un temps expressat en segons i mostri la seva equivalència en hores, minuts i segons. Per exemple, si s'introdueix 4550 segons, ha de mostrar 1 hora, 15 minuts i 50 segons.
Joc d'atzar La 6/49
- ex649.1) Heu de fer sortir 6 números entre el número 1 i el 49.
- ex649.2) El programa us ha de preguntar quantes combinacions de 6 números, entre 1 i 49, ha de presentar. Feu servir un bucle de tipus while.
- ex649.3) El programa us ha de preguntar quantes combinacions de 6 números, entre 1 i 49, ha de presentar. Feu servir un bucle de tipus for.
20210409 (2h presencial)
Joc d'atzar La 6/49
- ex649.1) Heu de fer sortir 6 números entre el número 1 i el 49.
- ex649.2) El programa us ha de preguntar quantes combinacions de 6 números, entre 1 i 49, ha de presentar. Feu servir un bucle de tipus while.
- ex649.3) El programa us ha de preguntar quantes combinacions de 6 números, entre 1 i 49, ha de presentar. Feu servir un bucle de tipus for.
20210326 (2h presencial)
Exercici d'endevinar un número
Feu un programa que tingui aquest comportament (us podeu basar en aleatorietat.xml):
L'ordinador ha pensat un 30 Poseu un valor entre 0 i 100: 50 Poseu un valor entre 0 i 50: 20 Poseu un valor entre 20 i 50: 30 Enhorabona! Ho heu encertat en 3 cops
Us proposem l'ús d'aquestes variables:
numPensatOrdinador numEntratUsuari nMax nMin nCmpt
- Diagrama de flux
- Programa funcionant amb EduBlocks
- Programa en Python (incloent-hi una captura del programa funcionant)
Pista:
import random nNunPensatPerOrdinador = random.randrange(0,101) print("L'ordinador ha pensat un " + str(nNunPensatPerOrdinador))
20210319 (2h presencial)
Exercici de bucles
Feu un programa que us demani un número i mostri els 100 números següents, començant pel que introduïu pel teclat.
Feu primer el diagrama de flux, implementeu-ho en EduBlocks i després convertint-ho a Python. Proveu el codi en Python a onlinegdb.com
20210312 (2h presencial)
Feu l'exercici dels "toppings" implementant-ho en EduBlocks i després convertint-ho a Python. Proveu el codi en Python a onlinegdb.com
Exercici de bucles
Feu un programa que us demani un número i mostri els 100 números següents, començant pel que introduïu pel teclat.
Feu primer el diagrama de flux, implementeu-ho en EduBlocks i després convertint-ho a Python. Proveu el codi en Python a onlinegdb.com
20210305 (2h presencial)
Fem l'exercici de l'enunciat present al dia anterior.
20210226 (2h presencial)
Fem l'exercici de l'enunciat present al dia anterior.
Següent enunciat (topping)
Escriu un programa que respongui a un usuari que vol comprar un gelat en una coneguda marca de menjar ràpid. He de trobar quant li costarà en funció del topping que triï.
• El gelat sense topping costa 1.90 €.
• El topping d'oreig costa 1 €.
• El topping de KitKat costa 1.50 €.
• El topping de brownie costa 0.75 €.
• El topping de lacasitos costa 0.95 €.
• En cas de no disposar del topping sol·licitat per l'usuari el programa escriurà per pantalla "No tenim aquest topping, ho sentim".I a continuació haurà d'informar del preu del gelat sense cap topping.
Finalment, el programa escriu per pantalla el preu del gelat amb el topping seleccionat (o cap).
20210219 (2h presencial)
Exercici
Un magatzem disposa de tres tipus de canonades a disposició del client. feu un programa que calculi el cost total en euros, d'una comanda en funció del sol·licitat pel client:
canonada de 1 metre --------------> 1 €
canonada de 5 metres -------------> 5 €
canonada de 10 metres ----------> 10 €
Com sempre:
- Diagrama de flux
- Implementació amb Scratch
- Implementació en Python
20210212 (2h presencial)
Alguns codis comentats a classe avui
Exercicis
- exNotes01) Feu un programa que calculi la mitjana de les notes de programació. Haurà de preguntar "Primera nota: ", i després "Següent nota: ". El programa acaba de preguntar "Següent nota: " quan s'introdueix un zero. Al finalitzar es presenta la mitjana aritmètica de totes les notes introduïdes.
- exNotes01a) Diagrama de flux
- exNotes01b) Implementació fent servir Scratch o Snap!
- exNotes01c) Implementació fent servir Python
- exNotes02) Feu un programa que calculi la mitjana de les notes de programació. Haurà de preguntar "Primera nota: ", i després "Següent nota: ". El programa acaba de preguntar "Següent nota: " quan s'introdueixen dos zeros consecutius. Al finalitzar es presenta la mitjana aritmètica de totes les notes introduïdes.
- exNotes02a) Diagrama de flux
- exNotes02b) Implementació fent servir Scratch o Snap!
- exNotes02c) Implementació fent servir Python
20210205 (2h presencial)
Exercici
A una botiga de llums, volen comptabilitzar la venda de bombetes:
- Les bombetes de Leds equivalent a la clàssica de 200W valen 20 €.
- Les bombetes de Leds equivalent a la clàssica de 100 W valen 10 €.
- Les bombetes de Leds equivalent a la clàssica de 60W valen 6 €.
- Les bombetes de Leds equivalent a la clàssica de 40W valen 4 €.
El programa ha de preguntar al client, quina bombeta desitja: una de 200W o 100W o 60W o 40W?
El programa ha de comptabilitzar el preu i seguir preguntant i comptabilitzant. El programa finalitza quan el botiguer prem 0 (zero), en aquest cas donarà el preu que el client ha d'abonar durant 5 segons i acaba.
20210129 (2h presencial)
- 1a hora: Seguim fent Python
Exercicis de condicions en Python (Podeu consultar la teoria a Condicionals amb Python)
Alguns codis fets avui. Recordeu de treure l'extensió .txt quan ho baixeu (amb botó dret, anomena i desa l'enllaç)
Provador de codis en línia: onlinegdb.com
- 2a hora: Diagrames de flux i Scratch
Exercici a fer amb Scratch. Accés al cinema
A partir de la qualificació d'una pel·lícula i l'edat de l'espectador, indicar si aquest pot o no passar.
Qualificacions de les pel·lícules:
- T – Tots els públics.
- M – Majors o igual de 13 anys.
- J – Majors o igual de 16 anys.
- A – Majors o igual de 18 anys.
El programa demanarà la lletra que determina la qualificació de la pel·lícula i l’edat de l'espectador per, a continuació, mostrar per pantalla si aquest pot passar a la sala o no.
El programa ha de controlar que la qualificació de la pel·lícula sigui T, M, J o A. Qualsevol altra entrada no serà vàlida.
20210122 (2h presencial)
- 1a hora: Diagrames de flux i Scratch
- 2a hora: Seguim fent Python
Alguns codis fets avui. Recordeu de treure l'extensió .txt quan ho baixeu (amb botó dret, anomena i desa l'enllaç)
Provador de codis en línia: onlinegdb.com
Condicionals en Python
Exercicis de condicions en Python
Estructures repetitives, o bucles, en Python
Pràctiques d'introducció a Python . Part 3 - SMX
Exercicis d'estructures de control repetitives en Python
20210120 (1h síncrona)
Exercicis de condicions en Python
Exercici per dur fet de casa
Demaneu dos nombres amb decimals (a i b) i presenteu llur suma.
20210115 (1h presencial)
Pràctiques amb Scratch. En recordeu-vos d'anar-les desant a la vostra carpeta compartida al Drive.
20210113 (1h síncrona)
Alguns codis fets a classe, avui
repàs de codis en Python. A on ho vam deixar el darrer dia que vam fer Python.
Exercicis de condicions en Python
Els % a Python
%d és per a nombres enters (números sense decimals, els de tipus int)
%s és per a cadenes de caràcters (s: string, és a dir, paraules -també anomenades cadenes de caràcters-)
%f és per a nombres reals (números amb decimals, de tipus float)
%.5f el que va entre el %. i la lletra f és el nombre de decimals (en aquest cas són 5 decimals)
20201218 (1h presencial)
Com fer anar la consola de videojocs iNNEXT a Scratch 1.4
20201216 (1h síncrona)
Introducció a alguns programes en Python. A on ho vam deixar el darrer dia que vam fer Python.
20201211 (1h presencial)
Seguim amb l'Scratch
20201204 (1h presencial) Darrer dia de lliurament
Darrer dia de lliurament del treball del 1r trimestre
20201202 (1h síncrona)
Comencen les correccions de qui hagi acabat el treball del 1r trimestre.
20201127 (1h presencial)
Feu amb Snap! o Scratch una felicitació de Nadal o un joc inspirat amb un tema nadalenc.
Aneu al vostre Drive de la NET de l'escola i compartiu una carpeta amb en Carles Olivé i en Jordi Binefa. Aquí hi deixareu el vostre codi .sb, .sb2 o .xml i el vídeo curt que demostra el funcionament del teu treball.
20201125 (1h síncrona)
Explicació del treball del 1r trimestre. Fer amb Snap! o Scratch una felicitació de Nadal o un joc inspirat amb un tema nadalenc.
20201120 (1h presencial)
Exemple de percentatges, fruit d'un dubte preguntat a classe.
20201118 (síncrona)
1r codi de prova:
""" Això són comentaris """ print ("Hola 2n d'SMX-A") # Un altre comentari
Partint de les 10 primeres pàgines d'aquest Tutorial de Python 3. 1- Què és Python3?
2- El llenguatge Python es compila o s'interpreta? S'interpreta
3- Podríem fer servir el llenguatge Python com a una calculadora?
4 Sumeu en Python 2 + 2
5- Hem d'utilitzar parèntesis en Python?
6- Dividiu 14 entre 7 Python
7- Multipliqueu 4 per 23 en Python
8- Com assignar un valor a una variable en Python?
9- Python pot manipular cadenes de text, com poden ser expressades?
10- Les cadenes de text poden ser concatenades ( enganxades juntes ). Amb amb quin operador?
Pràctiques d'introducció a Python - SMX
20201113 (presencial)
Pràctiques d'Scratch des de p10 fins a p12.
20201111 (síncrona)
1r codi de prova:
""" Això són comentaris """ print ("Hola 2n d'SMX-A") # Un altre comentari
Partint de les 10 primeres pàgines d'aquest TutorialPython3.pdf. 1- Què és Python3?
2- El llenguatge Python es compila o s'interpreta?
3- Podríem fer servir el llenguatge Python com a una calculadora?
4 Sumeu en Python 2 + 2
5- Hem d'utilitzar parèntesis en Python?
6- Dividiu 14 entre 7 Python
7- Multipliqueu 4 per 23 en Python
8- Com assignar un valor a una variable en Python?
9- Python pot manipular cadenes de text, com poden ser expressades?
10- Les cadenes de text poden ser concatenades ( enganxades juntes ). Amb amb quin operador?
Pràctiques d'introducció a Python - SMX
20201106
Exercici: L'algorisme 3n+1
Primer feu el diagrama de flux i després l'implementeu amb Snap! o Scratch. Heu de desar les captures del diagrama de flux i el vostre codi.
El problema que es planteja aquí és estudiar un dels algoritmes més clàssics no resolts de la ciència de l'Algorísmica: l'algorisme 3n+1. Considerem el següent algoritme:
- entrar n
- imprimir n (digues n durant 0.5 segons) <-- Dins d'un bucle infinit (per sempre)
- si n =1 aleshores ACABA EL PROGRAMA (atura tot)
- si n es senar aleshores n=3n+1
- en cas contrari, és a dir, si n és parell, aleshores n=n/2
- tornar a la línia d'imprimir n
Per exemple, donat el número 22 el programa imprimiria la següent seqüència de números: 22 11 34 17 52 26 13 40 20 10 5 16 8 4 2 1. Aquesta seqüència rep el nom de cicle del número 22. Aquest és un cicle de longitud 16.
És una conjectura no demostrada que aquest algorisme acaba sempre, és a dir, que el cicle de tot nombre enter és un cicle finit.
Feu un programa que escrigui el cicle d'un número entrat per teclat. Podeu fer servir el programa per investigar cicles grans i cicles petits. Per exemple, els números de la forma 2^n (2,4,8,16,32,64,128, ...) tenen un cicle curt...
20201030
1r Exercici) Feu un programa anomenat 20201030_ex01.xml, una captura anomenada 20201030_ex01.png i una captura del diagrama de flux amb el nom 20201030_ex01_flux.png que faci:
- Declareu la variable n. Al prémer la bandera verda s'instancia al valor 0.
- Al prémer la tecla + la variable s'incrementa en 1. Durant mig segon apareixerà al personatge.
- Al prémer la tecla - la variable es decrementa en 1. Durant mig segon apareixerà al personatge.
2n Exercici) Feu un programa anomenat 20201030_ex02.xml, una captura anomenada 20201030_ex02.png i una captura del diagrama de flux amb el nom 20201030_ex02_flux.png que faci:
- Pregunti un número del 0 al 10.
- Presenti la taula de multiplicar del número entrat multiplicat des de 0 fins a 10. L'interval de presentació de cada multiplicació serà de mig segon.
3r Exercici) Feu un programa anomenat 20201030_ex03.xml, una captura anomenada 20201030_ex03.png i una captura del diagrama de flux amb el nom 20201030_ex03_flux.png que faci (aprofiteu l'exercici anterior):
- Pregunti un número del 0 al 10.
- Si el número és inferior a 0 o superior a 10, el programa ens indicarà que som fora del ventall de valors permesos i ens tornarà a preguntar fins que escrivim un valor entre 0 i 10, ambdós inclosos.
- Presenti la taula de multiplicar del número entrat multiplicat des de 0 fins a 10. L'interval de presentació de cada multiplicació serà de mig segon.
20201023
Exercici) Emprant Snap! feu 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). El nom d'aquest programa serà any_traspas i es desarà com a any_traspas.xml.
Exemples d'anys de traspàs: 2020, 2000
Exemples d'anys que no són de traspàs: 2021, 1900
Per a verificar en línia si un any és de traspàs o no
20201016
20201009
Repàs del dia anterior
20201002
Adreça de la teleconferència 2n d'octubre
20200925
Editor de diagrames de flux en línia
20200922
Repàs d'ordres del sistema operatiu GNU/Linux - 2a setmana del curs 2020-2021