Diferència entre revisions de la pàgina «2n SMX-B per dies. Curs 2020-2021»

De binefa.com
Salta a la navegació Salta a la cerca
 
(Hi ha 28 revisions intermèdies del mateix usuari que no es mostren)
Línia 8: Línia 8:
  
 
[https://docs.google.com/spreadsheets/d/1-JerI2CtVWn8g9gBXBtqtnum16dNqZ4DuQ9F-jutGiQ/edit#gid=842392936 Llista de 2n d'SMX-B 2020-2021]
 
[https://docs.google.com/spreadsheets/d/1-JerI2CtVWn8g9gBXBtqtnum16dNqZ4DuQ9F-jutGiQ/edit#gid=842392936 Llista de 2n d'SMX-B 2020-2021]
 +
 +
[[Carpetes compartides 2n d'SMX-B. Curs 2020-2021]]
  
 
= Algunes classes =
 
= Algunes classes =
== 20210304 (2h presencial) ==
+
== 20210526 (2h presencial) ==
 +
[[Projecte Final de 2n d'SMX - Curs 2020-2021]]
 +
 
 +
== 20210519 (2h presencial) ==
 +
[[Projecte Final de 2n d'SMX - Curs 2020-2021]]
 +
 
 +
== 20210512 (2h presencial) ==
 +
[[Projecte Final de 2n d'SMX - Curs 2020-2021]]
 +
 
 +
== 20210505 '''Comença el projecte final ''' (2h presencial) ==
 +
[[Projecte Final de 2n d'SMX - Curs 2020-2021]]
 +
 
 +
[[Projecte Joan Sanahuja - 2n SMX-A Curs 2020-2021]]
 +
 
 +
== 20210421 (2h síncrona) '''Examen ordinària M14UF1''' ==
 +
[https://meet.google.com/hhy-jrji-dco Teleconferència per a quan ho demani el professor]
 +
 
 +
Feu aquest exercici (diagrama de flux, edublocks i Python sobre onlinegdb):
 +
=== Pes ideal ===
 +
El nom de el programa és '''SMX2B_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
 +
 
 +
[https://binefa.cat/smx2021/b/20210421/parentesis.png Pista de com fer parèntesis amb edublocks]
 +
 
 +
== 20210414 (2h presencial) ==
 +
[https://binefa.cat/smx2021/b/20210414/ Alguns codis explicats avui]
 +
 
 +
=== Exercici d'endevinar un número ===
 +
Feu un programa que tingui aquest comportament (us podeu basar en [https://binefa.cat/smx2021/a/20210326/aleatorietat.xml 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 [https://app.edublocks.org/ EduBlocks]
 +
 
 +
* Programa en Python (incloent-hi una captura del programa funcionant)
 +
 
 +
Pista:
 +
 
 +
[[Image:SmxAleatori01.png|center|Aleatorietat]]
 +
 
 +
import random
 +
 +
nNunPensatPerOrdinador = random.randrange(0,101)
 +
print("L'ordinador ha pensat un " + str(nNunPensatPerOrdinador))
 +
 
 +
[[Image:SmxAleatorietat02.png|center|Aleatorietat. 2a pista]]
 +
 
 +
=== 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'''.
 +
 
 +
== 20210407 (2h presencial) ==
 +
[https://binefa.cat/smx2021/b/20210407/ Alguns codis comentats avui]
 +
 
 +
=== Programa_càlcul_segons===
 +
El nom de el programa és--> '''CALCUL_SEGONS_Cognom1_Cognom2_Nom_SMX2B'''
 +
 
 +
1r) Demaneu per teclat una hora en hores, minuts i segons (dades enteres -''int''-).
 +
 
 +
2n) Calculeu quants segons han passat des de les 0: 0: 0 hores.
 +
 
 +
3r) Mostreu per pantalla el resultat (dada entera -''int''-).
 +
 
 +
'''''Nota''': S'assumiu que l'hora introduïda és correcta.''
 +
 
 +
=== 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 [https://app.edublocks.org/ EduBlocks] i després convertint-ho a Python. Proveu el codi en Python a [https://www.onlinegdb.com/ onlinegdb.com]
 +
 
 +
== 20210324 (2h presencial) ==
 +
[https://binefa.cat/smx2021/b/20210324/ Alguns codis comentats avui]
 +
 
 +
=== Programa_qualificacions ===
 +
 
 +
El nom de el programa és--> '''QUALIFICACIONS_Cognom1_Cognom2_Nom_SMX2B'''
 +
 
 +
Es desitja llegir 10 qualificacions acceptant únicament les qualificacions que estiguin a l'interval (ventall de valors) de 0 a 10.
 +
 
 +
=== Programa_càlcul_segons===
 +
El nom de el programa és--> '''CALCUL_SEGONS_Cognom1_Cognom2_Nom_SMX2B'''
 +
 
 +
1r) Demaneu per teclat una hora en hores, minuts i segons (dades enteres -''int''-).
 +
 
 +
2n) Calculeu quants segons han passat des de les 0: 0: 0 hores.
 +
 
 +
3r) Mostreu per pantalla el resultat (dada entera -''int''-).
 +
 
 +
'''''Nota''': S'assumiu que l'hora introduïda és correcta.''
 +
 
 +
== 20210303 (2h presencial) ==
 +
 
 +
[https://app.edublocks.org/ EduBlocks]
 +
 
 
Fem l'exercici de l'enunciat present al dia anterior.
 
Fem l'exercici de l'enunciat present al dia anterior.
  
[https://binefa.cat/smx2021/b/20210304/ Alguns codis comentats avui]
+
[https://binefa.cat/smx2021/b/20210303/ Alguns codis comentats avui]
  
 
=== Següent enunciat (''topping'') ===
 
=== Següent enunciat (''topping'') ===

Revisió de 17:25, 30 juny 2021

Horari a partir del 18 de gener

2n d'SMX-B

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-B 2020-2021

Carpetes compartides 2n d'SMX-B. Curs 2020-2021

Algunes classes

20210526 (2h presencial)

Projecte Final de 2n d'SMX - Curs 2020-2021

20210519 (2h presencial)

Projecte Final de 2n d'SMX - Curs 2020-2021

20210512 (2h presencial)

Projecte Final de 2n d'SMX - Curs 2020-2021

20210505 Comença el projecte final (2h presencial)

Projecte Final de 2n d'SMX - Curs 2020-2021

Projecte Joan Sanahuja - 2n SMX-A Curs 2020-2021

20210421 (2h síncrona) Examen ordinària M14UF1

Teleconferència per a quan ho demani el professor

Feu aquest exercici (diagrama de flux, edublocks i Python sobre onlinegdb):

Pes ideal

El nom de el programa és SMX2B_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

Pista de com fer parèntesis amb edublocks

20210414 (2h presencial)

Alguns codis explicats avui

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 en Python (incloent-hi una captura del programa funcionant)

Pista:

Aleatorietat
import random

nNunPensatPerOrdinador = random.randrange(0,101)
print("L'ordinador ha pensat un " + str(nNunPensatPerOrdinador))
Aleatorietat. 2a pista

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.

20210407 (2h presencial)

Alguns codis comentats avui

Programa_càlcul_segons

El nom de el programa és--> CALCUL_SEGONS_Cognom1_Cognom2_Nom_SMX2B

1r) Demaneu per teclat una hora en hores, minuts i segons (dades enteres -int-).

2n) Calculeu quants segons han passat des de les 0: 0: 0 hores.

3r) Mostreu per pantalla el resultat (dada entera -int-).

Nota: S'assumiu que l'hora introduïda és correcta.

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

20210324 (2h presencial)

Alguns codis comentats avui

Programa_qualificacions

El nom de el programa és--> QUALIFICACIONS_Cognom1_Cognom2_Nom_SMX2B

Es desitja llegir 10 qualificacions acceptant únicament les qualificacions que estiguin a l'interval (ventall de valors) de 0 a 10.

Programa_càlcul_segons

El nom de el programa és--> CALCUL_SEGONS_Cognom1_Cognom2_Nom_SMX2B

1r) Demaneu per teclat una hora en hores, minuts i segons (dades enteres -int-).

2n) Calculeu quants segons han passat des de les 0: 0: 0 hores.

3r) Mostreu per pantalla el resultat (dada entera -int-).

Nota: S'assumiu que l'hora introduïda és correcta.

20210303 (2h presencial)

EduBlocks

Fem l'exercici de l'enunciat present al dia anterior.

Alguns codis comentats avui

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

20210224 (2h síncrona)

Fem l'exercici de l'enunciat present al dia anterior.

Alguns codis comentats avui

20210217 (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 d' 1 metre --------------> 1 €

Canonada de 5 metres -------------> 5 €

Canonada de 10 metres ----------> 10 €

Per sortir del programa haureu de prémer 0.

Com sempre:

  • Diagrama de flux
  • Implementació amb Scratch
  • Implementació en Python

20210210 (2h presencial)

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

20210203 (2h presencial)

Exercici

exBotigaLlums) 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 tornarà a preguntar al nou client.

20210127 (2h síncrona per confinament)

Alguns codis comentats avui

Condicionals amb Python

Exercicis de condicions en Python

20210120 (2h presencial)

Comencem Scratch per la pràctica 17.

20210115 (1h síncrona)

Alguns codis comentats a classe, avui (teniu un arxiu .zip amb els primers set codis)

Condicionals amb Python

Exercicis de condicions en Python

Els % a Python

%d és per a nombres enters (números sense decimals)

%s és per a cadenes de caràcters (s: string, és a dir, paraules)

%f és per a nombres reals (números amb decimals)

%.5f el que va entre el %. i la lletra f és el nombre de decimals (en aquest cas són 5 decimals)

  • Exercici:

Demaneu dos nombres amb decimals (a i b) i presenteu llur suma.

20210112 (1h presencial)

Pràctiques amb Scratch. En recordeu-vos d'anar-les desant a la vostra carpeta compartida al Drive.

20201218 (1h síncrona)

repàs de codis en Python. A on ho vam deixar el darrer dia que vam fer Python.

Condicionals amb Python

Exercicis de condicions en Python

20201215 (1h presencial)

Com fer anar la consola de videojocs iNNEXT a Scratch 1.4

20201211 (1h síncrona)

Seguim per aquí. A on ho vam deixar el darrer dia que vam fer Python.

Condicionals amb Python

20201204 (1h síncrona) Darrer dia de lliurament

Darrer dia de lliurament del treball del 1r trimestre.

20201201 (1h presencial)

Comencen les correccions de qui hagi acabat el treball del 1r trimestre.

20201127 (1h síncrona)

Estava previst seguir per aquí. Degut a la petició dels alumnes, teniu temps per a desenvolupar el treball final del 1r trimestre.

20201124 (1h presencial)

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 síncrona)

Pràctiques d'introducció a Python - SMX

Material penjat el dia d'avui

20201117 (1h presencial)

Material penjat el dia d'avui

20201113 (1h síncrona)

Eina de programació en línia

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? El Python 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

Material penjat el dia d'avui

20201110 (1h presencial)

Material penjat el dia d'avui

20201104

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


Material penjat el dia d'avui

20201028

1r Exercici) Feu un programa anomenat 20201028_ex01.xml, una captura anomenada 20201028_ex01.png i una captura del diagrama de flux amb el nom 20201028_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 20201028_ex02.xml, una captura anomenada 20201028_ex02.png i una captura del diagrama de flux amb el nom 20201028_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 20201028_ex03.xml, una captura anomenada 20201028_ex03.png i una captura del diagrama de flux amb el nom 20201028_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.


Material penjat el dia d'avui

20201021

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


Material penjat el dia d'avui

20201014

Material penjat el dia d'avui

20200930

Captures del comptador emprant variable

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

20200916

Teleconferència 16 de setembre de 2020

Captura de codis Snap!