Omet navegació

Activitat 3.2

ACTIVITAT 3.2 Del tauler a l’ordinador

Sabers

Sabers del currículum Sabers concretats
1.1 Aplicació d’estratègies, tècniques i marcs de resolució de problemes en diferents contextos i les seves fases. [G]
  • Reconeixement de la forma de treballar de l’enginyeria per a la resolució de problemes (pràctiques de l’enginyeria) a partir de casos reals: definir i delimitar problemes, identificar-ne solucions múltiples i seleccionar la (teòricament) òptima; desenvolupar i utilitzar prototips i simulacions; planificar i portar a terme proves/tests; analitzar i interpretar dades per identificar punts de millora; materialitzar les solucions, argumentar basant-se en proves; obtenir, avaluar i comunicar informació; usar les matemàtiques, el pensament computacional, els models científics i les tecnologies disponibles. [ESS]
1.3 Anàlisi de productes i de sistemes tecnològics per a la construcció de coneixement des de diferents enfocaments i àmbits. [G]
  • Identificació de productes i sistemes tecnològics del nostre entorn i avaluació de la seva funció des de diferents àmbits.
3.1 Resolució de processos mitjançant algorísmica i representació amb diagrames de flux. [E]
  • Descomposició d’un procés en fases simples i recursives com a estratègia de resolució. [ESS]
  • Comprensió i elaboració d’algorismes de situacions quotidianes en forma de llenguatge natural.
  • Reconeixement i aplicació de les estructures algorísmiques bàsiques (seqüencial, condicional, iterativa). [ESS]
  • Interpretació d'algorismes a partir de la seva representació gràfica. [ESS]
3.2 Implementació d’aplicacions informàtiques senzilles per a ordinador i dispositius mòbils I iniciació a la intel·ligència artificial. [E]
  • Utilització de pseudocodi per passar de l’algorisme al codi.
  • Detecció de variables i atributs en la descripció algorísmica d’un procediment.
  • Identificació i ús de les operacions específiques de cada tipus de variable.
  • Utilització d’operadors lògics en estructures condicionals i iteratives.
  • Codificació d’algoritmes mitjançant entorns de programació. [ESS]

Justificació de la proposta

Es busca plantejar un context significatiu per a l’alumnat dins de la seva zona de desenvolupament proper, per afavorir l’aprenentatge dels sabers de pensament computacional, programació i robòtica. L’activitat se centra en la utilització del pseudocodi com a eina de transició entre l’algorisme i el codi executable.

La detecció de variables i atributs presents en la descripció algorísmica d’un procediment requereix acompanyament i bastides d’aprenentatge, ja que implica un nivell d’abstracció considerable en aquestes etapes educatives. Cal proposar estratègies de suport que ajudin a classificar les variables i a aplicar-hi les operacions específiques segons el seu tipus.

Descripció de l’activitat

El punt de partida d’aquesta activitat és un senzill programa ja fet i operatiu en l’entorn Scratch, que consisteix a proporcionar una plataforma o tauler digital per jugar a un joc de taula senzill. La proposta està preparada perquè l’alumnat faci una “traça” de les principals variables de control del programa mentre hi fa una partida.

A partir dels resultats d’aquesta traça, recollida en una taula, l’alumnat fa un procés inductiu per determinar quines de les variables de control són essencials per determinar el final de la partida. En acabat es demana construir, amb operadors lògics i variables, l’expressió lògica que expressa la condició de “final de partida”, primer en llenguatge natural i després fent servir els blocs típics de l’entorn Scratch.

A través d’una proposta de mínims pel que fa als blocs necessaris per programar l’aplicació en Scratch, es demana fer un pseudocodi previ a la seva implementació en aquest entorn.

Com a ampliació es proposa fer evolucionar el programa original per aconseguir que l’alumnat pugui jugar directament contra la màquina, en un nu procés que revisa totes les fases del procés anterior amb l’aplicació dels coneixements treballats.

S’inclou:

Detall de l’activitat

Cursa de daus

Objectius

  • Fer la traça de l’evolució dels valors de les variables d’un programa.
  • Deduir l'estructura algorísmica d’un programa a partir d’observar-ne el funcionament.
  • Decidir quins paràmetres influeixen en el flux del programa i expressar-los en forma de variables de diferents tipus.
  • Aplicar operadors adequats a cada tipus de variable per expressar transicions i canvis d’estat en el programa.
  • Traduir condicions expressades en llenguatge natural a expressions logicomatemàtiques basades en la comparació de variables, per al control del flux del programa.
  • Fer la transició de llenguatge natural a algorisme i d’algorisme a codificació en entorn de programació.

Tauler de joc de la cursa de daus

 Figura 1. Tauler del joc de la cursa de daus

El joc de la cursa de daus és el més senzill que s’ha inventat mai. Dos jugadors se situen a la casella 1. En cada torn, el jugador llança el seu dau i avança tantes caselles com el nombre que ha sortit. El joc s’acaba quan un dels dos jugadors arriba a l’altre extrem del tauler.

  1.  Fes una partida de dos jugadors a la cursa de daus amb el tauler digital fet amb Scratch que trobaràs a ja.cat/TaulerCursa. Només necessiteu un dau per jugar. Per fer que la fitxa avanci una casella, cal prémer una vegada la tecla de la lletra del jugador “a” o “b”.

    En cada torn, i just després d’haver mogut la fitxa, atureu la partida i apunteu en la taula de variables el nombre que ha sortit en tirar el dau i la casella en què es troben cadascun dels dos jugadors.
    Taula de variables

    Orientacions: Aconsellem fer les partides de manera simultània i sincronitzant els torns: s’aprecia més bé el caràcter iteratiu dels algorismes i que qualsevol estat de la partida queda perfectament definit amb un nombre limitat de variables.

    • Quins valors numèrics de quines variables indiquen el final de la partida?
    • Escriu les condicions de final de partida com una comparació en forma d’igualtat o desigualtat matemàtica entre les variables i els seus valors.
    • Quina seria l’expressió lògica perquè l’algorisme aturi o faci continuar el joc en una estructura condicional?
      Si _______________, llavors continua la partida si no atura la partida
    • Quina seria l’expressió lògica perquè l’algorisme faci continuar el joc en una estructura iterativa?
      Mentre _________________, llavors continua la partida
  2.  

    Orientacions: 

    • S’aconsella comparar els valors de les variables al final de diverses partides diferents per convidar a trobar un patró comú.

    • L‘ús de llenguatge matemàtic o natural per establir les comparacions i les funcions lògiques és opcional. 

  3. La taula següent mostra quins blocs s'utilitzen en l’entorn de programació Scratch per definir els operadors relacionals, els operadors lògics i les variables de la Taula 2.

    Blocs
    Construeix un únic bloc combinant el blocs anteriors que calguin que es pugui posar com a condició en aquesta estructura iterativa per indicar que s’ha arribat al final de partida.

      Bloc repeteix

      Orientacions:

      • En el cas que no s’opti per Scratch, se suggereix adaptar l’activitat a la interfície gràfica de l’entorn de programació amb què es treballa.

      • Es recomana fabricar els blocs en suport paper o cartolina per fer que sigui una activitat manipulativa que permeti revisar opcions i prototips de manera més intuïtiva i menys abstracta, i també facilitar una discussió en equip.

        També es pot treballar directament en l’entorn de programació.

    • El programa cat/TaulerCursa està fet combinant els blocs anteriors i aquests blocs de l’entorn Scratch:
      Blocs

      Escriu el pseudocodi per programar ja.cat/TaulerCursa fent servir les accions, estructures, variables i operadors anteriors i els de l’apartat c).

      Orientacions: Es recomana orientar l’alumnat amb exemples sobre les normes bàsiques a l’hora de fer servir pseudocodi.

    • Fes un recompte de totes les accions, estructures, variables i operadors que has utilitzat en el pseudocodi de l’apartat d).
      Taula
    • Fes la programació del teu pseudocodi de cat/TaulerCursa en entorn Scratch. Accedeix a ja.cat/TaulerCursaEntorn i trobaràs els fons de pantalla, els gràfics, els blocs principals i les variables ja creades. Fes el teu programa a la finestra del personatge “void”. T’aconsellem que no modifiquis els blocs que hi trobaràs ja creats. Això et facilitarà la programació.

      Per ajustar el temps de reacció del teclat, et recomanem inserir aquest bloc després que el programa faci avançar una casella la fitxa:
      Bloc espera

    • Un cop has programat el funcionament del tauler, et convidem a fer evolucionar el programa fent que el jugador B sigui l’ordinador. Per això, en cada torn del jugador B, caldrà que el programa…
      1. generi una variable dau que tingui un valor aleatori entre 1 i 6;
      2. faci aparèixer aquest valor aleatori de dau en pantalla, i
      3. faci avançar la fitxa B tantes vegades com indiqui

    Orientacions: 

    • Es planteja aquest apartat com una activitat d’ampliació.
    • Es pot convidar l’alumnat a incorporar qualsevol nova norma, millora o variant del joc que vulguin fer.

    Creat amb eXeLearning (Finestra nova)