Taules automàtiques

És possible generar taules a partir de variables creades en el nostre algorisme. La funcionalitat més bàsica és crear taules a partir de llistes. També és possible generar una taula a partir d'una matriu. En les següents seccions explicarem ambdues opcions.

Sovint, les dades que es volen proporcionar al plantejar un problema es veurien millor en una taula. De totes maneres, l'edició de cada cel·la individual pot ser un procés tediós, especialment si volem utilitzar variables per crear una taula aleatòria. Afortunadament, Wiris Quizzes alleuja bastant la càrrega de feina al convertir fàcilment les variables de llista a cel·les d'una taula. I el que és més interessant encara, aquesta característica ens permet crear taules de mida variable (consulta l'última secció per obtenir més informació al respecte).


Qüestions bàsiques

Utilitzar aquesta funcionalitat és molt senzill. En el cas més simple, només hem de col·locar una variable de llista dins d'una cel·la de taula (ja sigui amb l'assistent de taules o creant una taula a ma en mode HTML). Veurem com resulta.

Escriure l'enunciat

Creem una pregunta de resposta breu i escrivim una variable dins d'una taula de dimensió 1x1:

Crear una llista

Definim a com una llista en la pestanya de Variables:

Veure els resultats

Ara, quan anem a la pregunta, veiem que les entrades de la llista s'han expandit de forma automàtica en cel·les individuals d'una fila:

Com hem vist en aquest exemple, el comportament predeterminat d'una llista dins d'una cel·la de taula consisteix en omplir la taula cap a la dreta. De totes maneres, en molts casos ens agradaria que la llista s'expandís cap abaix. Això es pot aconseguir simplement afegint una cel·la per sobre de la cel·la que conté la variable, com en el següent exemple:

L'entrada anterior, a l'enunciat de la pregunta, es converteix en:


Exemple

Posem a prova el que hem vist en una pregunta real.

Un exercici típic de probabilitat bàsica és respondre preguntes sobre una distribució de probabilitat discreta, descrita amb una taula. Mitjançant l'ús de variables per omplir la taula, podem explotar les capacitats aleatòries a la nostra disposició per crear una pregunta que serà diferent cada vegada que s'obri. Introdueix el següent a l'editor:

En la pestanya Variables declarem les llistes aleatòries i calculem les respostes:

Wiris CAS CalcMe

La nostra pregunta és en realitat una llista de tres preguntes, per tant haurem de marcar la casella de "resposta composta" i utilitzar el format apropiat en l'espai en blanc de "resposta correcta":

Finalment, al visualitzar la pregunta veiem la taula expandida d'aquesta manera:

DEMO INTERACTIVA

Taules de mida aleatòria

Si volem, podem fer que la mida d'una taula depengui d'una variable. En realitat, això té a veure més amb saber com fer una llista de mida variable, atès que ja hem vist com les llistes es poden expandir automàticament en taules. Hi ha moltes opcions per definir aquestes llistes, però només en veurem les bàsiques.

Exemple 1

Suposem que volem fer que la distribució de probabilitat de l'exemple anterior tingui un nombre aleatori d'elements. En tal cas, utilitzariem la següent comanda en la pestanya Variables:

LIVE DEMO

Como veiem, el nombre N anterior podria haver sigut el resultat de qualsevol altre tipus de càlcul (sempre i quan aquest generi un nombre). Veiem que això ens permet bastanta creativitat a l'hora de definir llistes aleatòries.

Exemple 2

Un altre tipus de llista habitual és una amb elements espaiats uniformement entre els punts extrems i que, generalmanet, representen punts en un interval de nombres reals. Estudiem la següent comanda:

LIVE DEMO

Això significa, en paraules senzilles, "una llista de nombres de 0 a 3, espaiats per increments de 0,5".

Per convertir les llistes d'aquest estil en aleatòries, l'únic que hem de fer és reemplaçar els nombres de la definició per variables. En aquest exemple mantenim el punt d'inici i els increments, però aleatoritzem el punt final:

LIVE DEMO

Hi ha moltes altres possibilitats per definir llistes aleatòries. Qualsevol paràmetre que s'utilitzi per crear una llista es pot substituir per una variable; la nostra creativitat ens pot portar fins on vulguem.

Wiris Quizzes permet representar variables de matriu com taules. En altres paraules, les entrades d'una matriu es poden visualitzar com cel·les individuals d'una taula si es desitja. O des de'un altre punt de vista, les cel·les d'una taula es poden manipular més fàcilment a CalcMe si les emmagatzemem totes en una matriu.

Qüestions bàsiques

L'exemple més bàsic d'aquesta característica és en realitat molt útil. Si es col·loca una variable de matriu nxm dins d'una taula 1x1, es crea una taula amb n files i m columnes, cada cel·la amb l'entrada de matriu corresponent.

Veguem-ho en acció. La taula 1x1 en l'editor,

on M es defineix, per exemple, com

produeix la següent taula quan visualitzem la pregunta:

Com s'ha dit prèviament, això comporta que és possible emmagatzemar i editar taules arbitràries com matrius a CalcMe.

De la mateixa manera que amb les llistes, aquesta característica també funciona quan la variable matriu té altres cel·les al seu voltant. Un breu exemple seria:

i

en l'enunciat de la pregunta, es veu així:

En general, si hi ha altres cel·les presents (al contrari del que suceeix al col·locar una matriu en una taula d'una cel·la, com abans), ja hauria d'haver espai per la matriu en almenys una dimensió, atès que l'expansió de taules evita la creació de cel·les buides. En l'exemple anterior, la taula ja tenia el mateix nombre de columnes que la matriu i podríem haver afegit tantes files com haguéssim volgut.

Per últim, observa que l'expansió automàtica de taules evitarà sobrescriure cel·les existents. Utilitza el següent exemple com a guia:

amb M com abans, això no sobrescriurà la cel·la ocupada, sinó que simplement crearà una taula amb tota la matriu M dins d'una cel·la:

Taules aleatòries

De manera similar a la funcionalitat de llistes, les matrius també es poden utilitzar per generar taules aleatòries. L'idea és exactament igual que amb les llistes, només hem de saber com declarar una variable de matriu aleatòria i la taula resultant s'adaptarà automàticament.

Per declarar una matriu aleatòria, hem de familiaritzar-nos amb la sintaxis del tipus "llista de llistes" per matrius. És molt senzill, cada llista entre claudàtors és una fila de la matriu:

Per crear una taula, també podríem utilitzar claus {} en lloc de claudàtors. De totes maneres, hem de tenir en compte que l'objecte resultant de CalcMe, en aquest cas, serà una llista de llistes i no una matriu.

Anem a provar-ho a l'editor de preguntes, afegint aleatorietat amb l'ajuda de la declaració de llistes per comprensió:

LIVE DEMO

Si col·loquem N com en el primer exemple d'aquesta pàgina, obtindrem una taula amb entrades enteres aleatòries, amb m files i n columnes, on n i m són també nombres a l'atzar.

Una forma més senzilla de fer una matriu aleatòria pot ser suficient en certs casos, per exemple:

LIVE DEMO

ens dóna una matriu de mida fixa, però amb una entrada variable. De nou, les posibilitats per declarar matrius aleatòries són tantes com la nostra creativitat ho permeti.