GeoJS: Fins a l’infinit i més enllà!

Buzz Lightyear (font: http://www.disneydreaming.com/2010/11/05/buzz-lightyear-action-figure-is-the-best-selling-toy-at-the-disney-store-uk/ )Recordes què deia en Buzz Lightyear a la película Toy Story? “Fins a l’infinit i més enllà!” (“To infinity… and beyond!”).

Nosaltres no serem tan agosarats i raonarem gairebé fins l’infinit, no més enllà ; ). És a dir, observarem alguns casos particulars i provarem de generalitzar el que passa amb la resta de casos. D’això se’n diu raonament inductiu.

Què hi dius? Despeguem?

 

Guió de la sessió presencial: Fins a l’infinit i més enllà!

iniAbans de començar

petjadaPas 1: Entendre la demostració per inducció de la suma dels 100 primers nombres.

Qui no ha sentit a parlar de la famosa anècdota de C.F. Gauss amb 10 anys, resolent-li en un tres i no res al seu professor d’aritmètica, el resultat de la suma dels 100 primers nombres naturals? El gran Gauss va obtenir que 1+2+3+\cdots+99+100=5050 (+info). Com s’ho va fer?

  • Poli-cubs (font: http://www.pinterest.com/jana122/cubs-multilink/ )puzzleRepte 1: Representar visualment els números de l’1 al 9 com a piles de quadradets d’1×1.
    • Agafa un full i dibuixa el número 1 com a un quadradet d’1×1, al seu costat el número 2 com un quadradet sobre un altre (una pila de 2 quadradets) i així successivament fins al número 9.
    • bombetaIdees: pots imaginar-te que construeixes els números amb petits cubs que s’enganxen com els que es veuen a la imatge de la dreta.
    • lupaPistes:
      Solució: http://puntsingular.files.wordpress.com/2014/09/policubs_1.jpg
      
    • interrogantPregunta 1: Com descriuries la forma que t’ha quedat?
  • Simetria respecte eix vertical (font: http://www.cienciateca.com/simclases.html )puzzleRepte 2: Dibuixar la figura simètrica a l’anterior respecte un eix vertical.
    • En el mateix full, dibuixa la figura simètrica a la que has obtingut a la seva dreta (respecte l’eix vertical que quedaria entre les dues).
    • bombetaIdees: resum sobre les simetries.
    • lupaPistes:
      Solució: https://puntsingular.files.wordpress.com/2014/09/policubs_2.jpg
      
    • interrogantPregunta 2: Com descriuries la nova forma que t’ha quedat?.
  • peces-puzzlepuzzleRepte 3: Encaixar les dues figures anteriors.
    • Dibuixa com quedarien les dues figures anteriors encaixades entre elles (de forma que el resultat sigui el més compacte possible).
    • lupaPistes:
      Solució:
      - http://puntsingular.files.wordpress.com/2014/09/policubs_3.jpg
      - http://puntsingular.files.wordpress.com/2014/09/policubs_4.jpg
      
    • interrogantPregunta 3: Quina forma té la figura resultant d’encaixar les dues anteriors?
  • puzzleRepte 4: Calcular el nombre de quadradets 1×1 de la figura resultant.
    • Calcula l’àrea de la figura anterior de forma numèrica i després expressa-la algebraicament si enlloc de representar de l’1 al 9 al Repte 1, haguéssis representat de l’1 a una altra quantitat.
    • lupaPistes:
      Solució: http://puntsingular.wordpress.com/2014/09/14/demostracions-amb-policubs/
      
    • interrogantPregunta 4: Quin és nombre de quadradets d’1×1? Coincideix amb la suma dels nombres enters de l’1 al 9?
  • interrogantPregunta 5: Podries aplicar la mateixa tècnica per al cas particular de sumar de l’1 al 10? i de l’1 a l’11?
  • interrogantPregunta 6: Podries aplicar la mateixa tècnica per al cas general de sumar de l’1 al n?
  • El fet d’haver observat que passa en el casos particulars de l’1 al 9, i de l’1 al 20 i generalitzar de l’1 al n se’n diu raonament inductiu.

petjadaPas 2: Programar la demostració visual anterior.

Un cop vista la demostració visual anterior sobre paper, ara es vol que programis l’ordinador per a que la mostri gràficament a l’usuari. Seguirem el mateix camí que al pas anterior, però aquest cop enlloc de dibuixar al paper, el teu programa farà el dibuix en pantalla.

  • puzzleRepte 1: Representar el 5 i 7 amb quadradets d’1×1.
    • Fes la representació gràfica de les magnituds 5 i 7 en forma de piles de quadradets d’1×1 (cada pila d’un color diferent).
    • bombetaIdees:
      • Recorda com obrir l’editor de JavaScript i tenir l’entorn com en aquesta imatge (pots fer una ullada a aquestes indicacions). Cal que estiguis familiaritzat amb el JavaScript en Geogebra (si no és així fes primer aquesta activitat inicial).
      • Pots fer una funció que dibuixi una pila i cridar-la dos cops.
      • Pensa en usar bucles per a repetir instruccions.
      • Exemple per a dibuixar un quadrat i donar-li color:
        const g=ggbApplet
        
        /* Indico el 1r i 2n vèrtex del quadrat en el
        sentit contrari a les agulles del rellotge */
        g.evalCommand("p1=Polygon[(0,0),(3,0),4]")
        g.setColor("p1",255,0,0)
        
      • Funció que pots usar per assignar un color diferent a cada pila de quadradets 1×1:
        const g=ggbApplet
        
        /* Funció a copiar al teu codi */
        function autoColor(id, num) {
         g.setColor(id,(100+30*num)%255,((num % 3)*100)%255,0)
         g.setFilling(id, 0.8)
        }
        
        /* Exemple d'ús */
        g.evalCommand("p1=Polygon[(0,0),(3,0),4]")
        g.autoColor("p1", 1)
        
        g.evalCommand("p2=Polygon[(0,5),(2,5),4]")
        g.autoColor("p2", 2)
        
        • En aquesta ocasió no cal que entenguis aquesta funció, simplement copia-la al teu codi i crida-la enlloc de fer g.setColor.
        • Assigna colors diferents segons el número que li passes com a segon argument.
    • lupaPistes:
      func pila(n)
        per a i = 1 fins a n increments 1
          var id = "p"+n+"_"+i // un identificador diferent per a cada quadradet
          polígon[( (n-1) , (i-1) ), ( n, (i-1) ),4]
          autoColor(id, n)
        fi_per
      fi_func
      
      pila(5)
      pila(7)
      
  • policubs_1 (font: http://puntsingular.wordpress.com/2014/09/14/demostracions-amb-policubs/ )puzzleRepte 2: Representar totes les magnituds d’1 fins a 10
    • Fes la representació gràfica de totes les magnituds d’1 fins a 10 en forma de piles una al costat de l’altra en sentit ascendent (quedarà una forma d’escala).
    • bombetaIdees:
      • Pensa en usar bucles per a repetir instruccions.
    • lupaPistes:
      func escala( numTotal )
        /* Per a cada número de l'1 al numTotal... */
        per a n = 1 fins a numTotal increments 1
          /* Dibuixem la pila corresponent */
          pila(n)
        fi_per
      fi_func
      
      escala(10)
      
  • policubs_2 (font: http://puntsingular.wordpress.com/2014/09/14/demostracions-amb-policubs/ )puzzleRepte 3: Dibuixar la figura simètrica a l’anterior respecte un eix vertical.
    • Retoca el teu programa per a que a més de dibuixar l’escala anterior, dibuixi també una escala simètrica respecte un eix vertical a la seva dreta (és a dir una escala descendent).
    • bombetaIdees:
      • Pots crear-te una altra funció que dibuixi una pila simètrica i cridar-la a mida que vas generant l’escala que ja tens.
      • Primer crea la funció que fa la pila simètrica i prova-la.
    • lupaPistes:
      func pilaSimetricaHoritz(n, numTotal)
        const SEPARACIO = 2
      
        per a i = 1 fins a n increments 1
          var id = "ph"+n+"_"+i
          var x = numTotal*2 + SEPARACIO - n
          polígon[( (x-1), (i-1) ) , ( x, (i-1) ), 4]
          autoColor(id, n)
        fi_per
      fi_func
      
      func escala( numTotal )
        per a n=1 fins a numTotal increments 1
          pila(n)
          pilaSimetricaHoritz(n, numTotal) // línia nova
        fi_per
      fi_func
      
      escala(10)
      
    • interrogantPregunta 7: Quina és exactament l’equació de l’eix de simetria del que ha dibuixat el teu programa?
  • policubs_4 (font: http://puntsingular.wordpress.com/2014/09/14/demostracions-amb-policubs/ )puzzleRepte 4: Dibuixar de nou l’escala simètrica encaixada sobre l’escala original.
    • Amplia el teu programa per a que a més de dibuixar les escales anteriors, dibuixi una de nova encaixada sobre l’original (és a dir una simetria horitzontal i vertical amb una translació per a que quedi sobre l’anterior).
    • bombetaIdees:
      • Pots crear-te una altra funció que dibuixi la nova una pila simètrica i cridar-la a mida que vas generant l’escala original.
      • Recorda a provar primer la nova funció per separat i després ja provaràs de fer-ho tot alhora.
    • lupaPistes:
      func pilaSimetricaVH(n, numTotal)
        per a i = 1 fins a n increments 1
          var id = "pv"+n+"_"+i
          var x = numTotal - n + 1
          var y = numTotal + 1 - i
          polígon[( (x-1), y) , ( x, y ),4]
          autoColor(id, n)
        fi_per
      fi_func
      
      function escala( numTotal ) {
        for(n=1; n<=numTotal ; n++) {
          pila(n)
          pilaSimetricaH(n, numTotal)
          pilaSimetricaVH(n, numTotal) // línia nova
        fi_per
      fi_func
      
      escala(10)
      
    • interrogantPregunta 8: Amb quines altres transformacions geomètriques aconseguiriem també la nova escala a partir de l’original?

 

interrogantPregunta de Síntesi: Et veuries capaç de descriure un parell de situacions on et podrien ser útils les tècniques que après en aquesta activitat? Descriu-les per tal de compartir-les en grup.

mesI després…

geojs-induccio1-screenshotFelicitats! Has pogut fer un programa per a fer una demostració visual.

Així que amb aquesta activitat has aprés com:

  • Fer una demostració visual per inducció.
  • Crear simetries amb el teu programa.

Ara pots continuar amb

  • Repte Extra 1: Demanar a l’usuari un número n i fer la demostració de l’1 al n (enlloc de l’1 al 9 que fa ara el teu programa).
  • Repte Extra 2: Fer un altre programa que il·lustri aquesta demostració:

Fitxa DidàcticaFitxa didàctica

Teniu a disposició informació docent sobre les activitats de Geogebra amb JavaScript (GeoJS) i una fitxa didàctica general sobre com desenvolupar les activitats d’EduLogiX.

feather Autoria: Manel Martínez i Pascual i Jordi Campos i Miralles; inspirada en l’entrada “Demostracions amb policubs” al blog El punt singular.

Licencia de Creative CommonsPodeu usar el contingut i modificar-lo d’acord amb la Llicència Creative Commons Reconeixement-CompartirIgual 4.0.

Anuncis

Deixa un comentari

Fill in your details below or click an icon to log in:

WordPress.com Logo

Esteu comentant fent servir el compte WordPress.com. Log Out / Canvia )

Twitter picture

Esteu comentant fent servir el compte Twitter. Log Out / Canvia )

Facebook photo

Esteu comentant fent servir el compte Facebook. Log Out / Canvia )

Google+ photo

Esteu comentant fent servir el compte Google+. Log Out / Canvia )

Connecting to %s