2n SMX-A per dies. Curs 2020-2021

De binefa.com
Salta a la navegació Salta a la cerca

Contingut

Horari a partir del 18 de gener[modifica]

2n d'SMX-A

Teleconferència[modifica]

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[modifica]

20210514[modifica]

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

20210504[modifica]

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

20210430 Inici del Projecte Final (2h presencial)[modifica]

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

20210423 (2h presencial) Examen ordinària M14UF1[modifica]

Feu aquests exercicis (diagrama de flux, edublocks i Python sobre onlinegdb):

Campionats d'atletisme[modifica]

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[modifica]

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[modifica]

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
Pedra, paper o tisora
  • 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)[modifica]

Pes ideal[modifica]

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[modifica]

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[modifica]

  • 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)[modifica]

Alguns codis explicats avui

Joc d'atzar La 6/49[modifica]

  • 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)[modifica]

Alguns codis explicats avui

Exercici d'endevinar un número[modifica]

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

20210319 (2h presencial)[modifica]

Alguns codis explicats avui

Exercici de bucles[modifica]

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)[modifica]

Alguns codis explicats avui

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[modifica]

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)[modifica]

EduBlocks

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

Alguns codis comentats avui

Màquina virtual d'Android

20210226 (2h presencial)[modifica]

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

Alguns codis comentats avui

Següent enunciat (topping)[modifica]

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)[modifica]

Alguns codis comentats avui

Exercici[modifica]

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)[modifica]

Alguns codis comentats a classe avui

Exercicis[modifica]

  • 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)[modifica]

Alguns codis fet avui

Exercici[modifica]

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)[modifica]

  • 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[modifica]

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)[modifica]

  • 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[modifica]

Condicionals amb Python

Exercicis de condicions en Python

Estructures repetitives, o bucles, en Python[modifica]

Pràctiques d'introducció a Python . Part 3 - SMX

Exercicis d'estructures de control repetitives en Python

20210120 (1h síncrona)[modifica]

Exercicis de condicions en Python

Exercici per dur fet de casa[modifica]

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

20210115 (1h presencial)[modifica]

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

20210113 (1h síncrona)[modifica]

Alguns codis fets a classe, avui

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

Els % a Python[modifica]

%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)[modifica]

Com fer anar la consola de videojocs iNNEXT a Scratch 1.4

20201216 (1h síncrona)[modifica]

Introducció a alguns programes en Python. A on ho vam deixar el darrer dia que vam fer Python.

Condicionals amb Python

20201211 (1h presencial)[modifica]

Seguim amb l'Scratch

20201204 (1h presencial) Darrer dia de lliurament[modifica]

Darrer dia de lliurament del treball del 1r trimestre

20201202 (1h síncrona)[modifica]

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

20201127 (1h presencial)[modifica]

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.

Codis comentats avui

20201125 (1h síncrona)[modifica]

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)[modifica]

Exemple de percentatges, fruit d'un dubte preguntat a classe.

20201118 (síncrona)[modifica]

Material penjat el dia d'avui

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 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)[modifica]

Pràctiques d'Scratch des de p10 fins a p12.

20201111 (síncrona)[modifica]

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?

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[modifica]

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

20201030[modifica]

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.


Material penjat el dia d'avui

20201023[modifica]

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

20201016[modifica]

Codis del dia d'avui

20201009[modifica]

Codis del dia d'avui

Repàs del dia anterior

20201002[modifica]

Exercicis fet a classe

Adreça de la teleconferència 2n d'octubre

20200925[modifica]

Editor de diagrames de flux en línia

20200922[modifica]

Repàs d'ordres del sistema operatiu GNU/Linux - 2a setmana del curs 2020-2021

20200918[modifica]

Teleconferència 18 de setembre de 2020

Captura de codis Snap!