Maths e-book

Laboratorio

Lezioni del prof. Sandro Pierdomenico

Questa serie di esercizi rappresenta l’esperienza di molti anni di insegnamento del laboratorio di matematica nel nostro istituto.

Purtroppo la riforma ha reso residuale l’insegnamento della matematica in laboratorio soprattutto abolendo la figura del Docente Tecnico Pratico che, oltre a rappresentare uno stimolo allo svolgimento effettivo dell’attività, portava un punto di vista diverso, orientato al problem solving ed alla matematica applicata.

Per evitare di disperdere questo bagaglio di esperienza, abbiamo pensato di raccogliere le esperienze più significative sperando possano essere utili a chiunque ne sia interessato.

Le attività sono tarate per l’utilizzo con il foglio elettronico, soprattutto per la semplicità e flessibilità di utilizzo, ma possono essere applicate anche a vari sistemi di programmazione come Javascript che però richiedono competenze specifiche.

Per ogni esercizio viene anche indicato un tempo per il suo svolgimento

La raccolta delle relazioni e degli elaborati avviene per  via elettronica attraverso l’applicazione Weblab per rendere più semplice la consegna ed il controllo.

Dalla nostra esperienza quasi ventennale, questo modo di operare rappresenta un modo efficace per valorizzare qualità di alcuni nel trovare soluzioni ed uno stimolo a raggiungere risultati per obiettivi, prassi piuttosto in declino nella didattica non solo degli ultimi anni.

Cos'è una "relazione"

La relazione rappresenta un contenuto (scritto, grafico, multimediale, ecc.) attraverso il quale si presenta o si rendiconta un'attività. E' la forma di scrittura più diffusa in ambito lavorativo: in pratica tutta la produzione scritta scolastica è propedeutica a questa attività.

Perchè "progettare"

La relazione (o rapporto o analisi o referto o articolo, ecc.) deve avere alcune caratteristiche che richiedono una certa riflessione; chiarezza, sintesi, approfondimento di aspetti importanti, conoscenza dei destinatari, rappresentano alcuni degli aspetti di cui è necessario tenere conto nella produzione di una relazione.

Dipende dal contesto

Le relazioni hanno caratteristiche molto diverse se devono descrivere un'attività analitica (rapporto, analisi, realizzazione di un sistema software, ecc.) oppure un'attività sperimentale (reazione chimica, esperienza di Fisica, procedimento manuale). Nel primo caso ci si dovrà concentrare sugli aspetti più importanti del processo mentre nel secondo caso anche i dettagli più insignificati potranno avere un'importanza determinante.

Non è sperimentale

Nelle nostre attività di laboratorio non svolgiamo attività sperimentali ma cerchiamo di risolvere problemi attraverso il computer. Appare quindi evidente che una descrizione minuziosa dell'attività svolta (ho aperto il computer, ho inserito nella cella A1 il numero 3, ecc.) diventa addirittura controproducente rispetto all'obiettivo di rendere comprensibile e chiaro il lavoro svolto.

Per aiutare gli studenti nella produzione delle prime relazioni, gli stessi possono avvalersi dello schema che segue senza che esso diventi un totem intoccabile ed inalterabile; deve invece diventare una trama sulla quale definire nel tempo, con sempre maggiore attenzione, i vari aspetti anche in accordo al problema affrontato.

Schema semplificato

Titolo

è estremamente importante; deve consentire al lettore di farsi un'idea del contenuto senza leggere il resto dello scritto.

Obiettivi/Finalità

ciò che si vuole raggiungere con il lavoro svolto.

Strumenti

gli strumenti hardware, software o di altro genere usati per raggiungere gli obiettivi previsti.

Analisi e sviluppo

è la parte più importante della relazione; deve essere corredata da schemi che rendano semplice la comprensione anche ad un non esperto del settore trattato. In questa fase si deve saper distinguere fra soluzioni generali ed importanti aspetti risolutivi (formule, procedimenti particolari che devono essere  spiegati) e dettagli insignificanti che creano confusione.

Manuale

può servire solo in alcuni casi e deve dare l'indicazioni di uso e non di realizzazione del sistema.

Conclusioni

colui che scrive deve trarre le conclusioni sui risultati raggiunti, sugli aspetti di forza e di debolezza della soluzione e su eventuali difficoltà  incontrate o finalità non raggiunte.

Prospettive

le prospettive possono rappresentare eventuali sviluppi futuri del lavoro svolto in presenza di maggiore tempo o risorse.

Classi

terze

Durata

6 ore

Scopo

Simulare il funzionamento di un sistema complesso come la rappresentazione su un "visore" a 7 segmenti di una grandezza espressa in numero.

Prerequisiti

Uso della funzione SE e della formattazione condizionata nel foglio elettronico.




Introduzione

Questa esercitazione non rientra nelle attività canoniche del laboratorio di Matematica ma rappresenta un modo divertente ed inconsueto per affinare alcune tecniche di manipolazione dei dati che saranno utili nel proseguo dell'attivita'. L'esercitazione si riguarda la rappresentazione delle cifre basata su 7 led chiamato anche a "7 segmenti". Un primo brevetto di questa idea fu depositato nel 1908 da Frank W. Wood ma questo sistema per rappresentare numeri decimali ed alcuni simboli divenne molto popolare negli anni 70 con l'introduzione in molti sistemi di uso comune (orologi, calcolatrici, tachimetri, indicatori, strumenti di misura, ecc.); in realtà rappresentazioni a 7 segmenti sono state realizzate anche con sistemi diversi dal led come tubi a vuoto e pannelli elettromeccanici.

Responsive image
Responsive image

L'accensione o lo spegnimento dei singoli segmenti fa apparire il simbolo desiderato (generalmente una cifra decimale od un simbolo del sistema asadecimale (AbCdEF); affiancando più display si possono rappresentare numeri con più cifre. In generale, se consideriamo che il segmento accesso assume il valore 1 ed il segmento spento assume il valore 0, possiamo schematizzare la seguente tabella

Responsive image




Dalla teoria alla pratica

Ma come simulare l'accensione o lo spegnimento di un LED con il foglio elettronico ? allineando opportunamente le celle a formare una matrice di segmenti e usando la formattazione condizionale per "accendere" o "spegnere" il singolo segmento (con OpenOffice o LibreOffice, prima di attivare la formattazione condizionale, si deve definire lo stile dello sfondo da usare attraverso il tasto F11 o il menu Formato -> Stili e Formattazione)

Naturalmente si potrà usare qualsiasi colore di sfondo per simulare il colore del LED; di seguito un esempio di come si possano disporre le celle per rappresentare i 7 segmenti restringendo le colonne C e E ed allargando le righe 5 e 7.

Responsive image

A questo punto abbiamo un sistema per rappresentare una cifra a 7 segmenti; l'obbiettivo è quello di inserire un valore nella cella di Input A1 e vedere quello stesso valore rappresentato come cifra a 7 segmenti in modo AUTOMATICO.

Prima di procedere vediamo cosa abbiamo:

  • una tabella che per ogni valore ci dice quali segmenti dobbiamo accedere o spegnere per visualizzarlo (griglia);
  • un sistema di celle disposto in modo tale da rappresentare le cifre a LED;
  • la formattazione condizionata che ci permette di mettere uno sfondo colorato (LED accesso) se si presenta una determinata condizione.
  • Cosa serve adesso ? una stringa di "controllo" dei segmenti attraverso la quale accendere o spegnere i segmenti stessi:

    Responsive image

    Nell'esempio riportato sopra, le celle che compongono i segmenti sono rese uguali ai corrispondenti valori di controllo attraverso la semplice funzione di assegnazione (per esempio la cella D4 contiene"=H8" perché assumerà il valore contenuto nella cella di controllo H8, la cella E5 contiene "=I8" e cosi via); poi, applicando ai segmenti la formattazione condizionale si potranno accendere o spegnere i led direttamente cambiando i valori della stringa di controllo.


    Responsive image

    Ora abbiamo un sistema quasi pronto per diventare "automatico" ma non basta; la nostra stringa di controllo deve essere messa in relazione con il valore inserito nella cella A1 che rappresenta il nostro valore di "Input": se la cella A1 contiene il valore 7 il nostro display dovrà mostrare la cifra 7 e così per tutte le altre. Ma come mettere in relazione il valore in A1 con i segmenti ? la soluzione è l'utilizzo della griglia dove sono memorizzati tutte le sequenze corrispondenti alle varie cifre, anche esadecimali. la stringa di controllo dovrà assumere i valori corrispondenti alla sequenza per accendere la cifra in relazione a quanto contenuto nella cella A1; in pratica se nella cella A1 inseriamo il valore 3, il sistema dovrebbe cercare nella griglia la sequenza corrispondente al numero 3 (1111001) facendo "slittare" questi valori nella stringa di controllo.


    Responsive image

Qual'è il trucco?

La chiave della soluzione è trattare la stringa di controllo non tutta assieme ma per singolo segmento; in questo modo è possibile utilizzare due sistemi:

- il primo è un semplice SE; prendiamo il segmento a: dalla griglia si capisce che il segmento a assume il valore di spento (0) molte meno volte di quelle che assume il valore acceso (1); basta contare gli zeri della colonna del segmento a: sono solo 4 per le cifre 1, 4, B e D mentre per tutte le altre il valore sarà 1 quindi la formula nella cella H9 che controlla il segmento a sarà:

=SE (O(A1=1;A1=4;A1=B;A1=D);0;1)

la funzione =O(condizione1;condizione2;....) assume il valore vero se almeno una delle condizioni è vera anche il segmento g ha una situazione analoga ed in generale conviene controllare i casi in numero inferiore per limitare il numero di controlli. - Il secondo prevede l'utilizzo della funzione CERCA.VERT di cui si consiglia di consultare la guida in linea di Excel. Esistono naturalmente molte altre possibilità che lo studente forse troverà più utili e interessanti e che potranno solleticare la sua curiosità. Si consiglia di cominciare con una solo cifra e solo decimale per poi evolvere il sistema. Raddoppiando o triplicando le cifre a led e le stringhe di controllo (ma lasciando una solo griglia con le sequenze di accensione) si possono rappresentare numero più grandi; inoltre in questo caso il numero nella cella A1 andrà scomposto nelle sue cifre facendo particolare attenzione all'eventuale gestione delle cifre esadecimali.

Classi

terze

Durata

6 ore

Scopo

Capire i sistemi di numerazione a base non decimale; attuare procedure automatiche per realizzare conversioni da base qualsiasi a base decimale e viceversa.

Prerequisiti

Uso della funzione SE e della formattazione condizionata nel foglio elettronico.




Introduzione

Generalmente quando si fa riferimento ai sistemi di numerazione si pensa al sistema decimale; in realtà il più usato è sicuramente il sistema binario, se non altro perché utilizzato in tutti i sistemi digitali (computer, ma non solo) per elaborare, archiviare e trasmettere dati. La scelta di usare un sistema basato su due sole cifre, 0 e 1 (corrispondenti generalmente anche ad uno stato di spento/acceso oppure falso/vero) ha una ragione piuttosto evidente nella semplicità di trattare il segnale elettrico binario all'interno dei sistemi elettronici complessi come i computer; appare evidente che progettare e realizzare dei circuiti elettronici per riconoscere la presenza o l'assenza di un segnale elettrico è molto più semplice che riconoscere una gradualità di valori in scala (per esempio da 0 a 5 o da 0 a 10); fra l'altro sistemi elettronici basati su un sistema decimale sarebbero estremamente complessi e lenti e genererebbero errori ben più frequenti. Fin dai loro albori, gli elaboratori elettronici si sono basato sui principi dell'algebra booleana (George Boole) e sul sistema binario

Il sistema decimale è un sistema posizionale nel quale ogni cifra ha un "peso" che dipende dalla posizione che assume partendo da destra (cifre meno significative) e andando verso sinistra (cifre più significative). Più in generale quindi possiamo rappresentare un numero decimale come la somma dei fattori che lo compongono come più volte è stato fatto alla scuola primaria (per evitare di confondere il numero decimale 111 con il numero binario 111, quando si opera con sistemi numerici diversi è consuetudine indicare il numero fra parentesi e con al base come pedice; per esempio (111)10 oppure (111)2 ):

(2003)10 = 3u + 0da + 0h + 2k

siccome:

u = unità = 1 = 100

da= decine = 10 = 101

h = centinaia = 100 = 102

k = migliaia = 1000 = 103

allora possiamo scrivere anche

(2003)10 = 3 x 100 + 0 x 101 + 0 x 102 + 2 x 103

Per una definizione più formale di sistema di numerazione posizionale possiamo fare riferimento a quanto segue:

  • si sceglie un qualsiasi numero naturale b (diverso da zero e da uno), che chiameremo base
  • si scelgono c simboli diversi, che chiameremo cifre
  • si compongono i numeri tenendo presente che il valore di ogni cifra va moltiplicato per:
    • b0 cioè 1 (unità) se è l'ultima cifra alla destra del numero che stiamo considerando
    • b1 cioè b se è la seconda cifra da destra,
    • b2 se è la terza cifra da destra,
    • e così via, bn-1 se è la n-esima cifra da destra
  • la somma di tutti i valori così ottenuti è il numero che stiamo considerando; se consideriamo la cifra meno significativa (quella più a destra) come C0 e quella più a sinistra come cifra più significativa Cn possiamo scrivere

(CnCn-1Cn-2 ... C2C1C0)b = C0 x b0 + C1 x b1 + C2 x b2 + .... + Cn-2 x bn-2 + C n-1x bn-1 + Cn-2 x bn-2

e quindi per esempio:

(2123)10 = 3 x 100+ 2 x 101+ 1 x 102 + 2 x 103 = 3x1 + 2x10 + 1x100 + 2x1000 = (2123)10

Come effettuare la conversione da una base qualsiasi a base decimale

Analogamente al sistema decimale posizionale, anche il sistema binario è un sistema posizionale in cui la base è rappresentata dal numero 2 e le cifre dai soli valori 0 e 1, la somma dei singoli valori scomposti è però espressa in base decimale

(CnCn-1Cn-2.... C2C1C0) = C0 x 20 + C1 x 21 + C2 x 22 + ... + Cn-2 x 2n-2 + C n-1 x 2n-1 + Cn x 2n

(110)2= 0 x 20 + 1 x 21 + 1 x 22 = 0 x 1 + 1 x 2 + 1 x 4 = (5)10

Quindi, per effettuare la conversione da base binaria a base decimale, è necessario procedere come per una scomposizione sommando poi i singoli fattori. Da notare che, come vedremo più avanti, lo stesso procedimento si può usare per qualsiasi sistema posizionale. Un'altra interessante particolarità del sistema binario è che si può capire se il numero decimale convertito sarà pari o dispari solo osservando l'ultima cifra del numero binario (se è 0 sarà pari, se è 1 sarà dispari).




Dalla teoria alla pratica

Responsive image
Responsive image

Traducendo la teoria in pratica si può procedere individuando nel foglio elettronico un'area (un insieme di celle, tipicamente 8 per il sistema binario) nella quale inserire il valore da convertire distinto per singola cifra, una cella nella quale indicare la base, ed una cella nella quale verrà fornito il numero convertito.

Il numero decimale convertito sarà facilmente ottenibile utilizzando le formule descritte in precedenza (nell'esempio in figura M5= I5*K50 + H5*K51 + ....) in questo modo sarà possibile convertire anche numeri con basi diverse da 2 (es. 8).

Come avviene spesso, il sistema deve tener conto anche della presenza di valori in ingresso coerenti; se scrivessi una cifra superiore od uguale alla base, per esempio 3, questo dato sarebbe incompatibile con il sistema binario ed il software dovrebbe indicare tale anomalia.

Questa situazione può essere gestita nel seguente modo:

  • la cifra in rosso con una formattazione condizionata
  • il flag di controllo (celle della riga 6 che assumono solo i valori 0 e 1) con una clausola SE riferita alla cella soprastante.
  • la scritta Errore controllando la somma dei bit di controllo e se questa è maggiore di 0, scrivere Errore altrimenti con il risultato della formula già individuata

I flag di controllo possono essere colorati di bianco su sfondo bianco in modo da non essere visibili.

Il sistema Esadecimale

Il sistema numerico esadecimale (spesso abbreviato come esa o hex) è un sistema numerico posizionale in base 16, cioè che utilizza 16 simboli invece dei 10 del sistema numerico decimale tradizionale. Per l'esadecimale si usano in genere simboli da 0 a 9 per le prime dieci cifre, e poi le lettere da A a F per le successive sei cifre, per un totale di 16 simboli. E' usato in informatica nel linguaggio Assembler per la sua caratteristica di raggruppare insiemi di 4 cifre binarie chiamati anche semibyte o nibble

(F)16 = (1 1 1 1 )2

(C)16 = (1 1 0 0 )2

(4)16 = (1 0 0 0)2

Responsive image

La nostra applicazione potrebbe, con alcune modifiche, convertire anche numeri esadecimali ma per farlo è necessario gestire cifre non numeriche la letterali; in pratica è necessario convertire la lettera A nel corrispondente valore 10, lettera B nel corrispondente valore 11 e così via.

Per procedere è necessario gestire un'ulteriore valore che diverrà poi il valore della cifra da moltiplicare per la base elevata alla posizione (nell'esempio in figura M5= I7*K5^0 + H7*K5^1 + G7*K5^1 + .....)

La trasformazione da cifra esadecimale letterale al suo valore effettivo può essere effettuata utilizzando la funzione Excel CODICE che restituisce il corrispondente valore ASCII (un sistema che fa corrispondere ad ogni lettera o simbolo un numero fra 0 e 225 secondo una tabella chiamata appunto ASCII - American Standard Code for Information Interchange - ovvero Codice Standard Americano[1] per lo Scambio di Informazioni) della lettera indicata (es. CODICE(I5) = 65, CODICE("B")= 66, ecc.).

Come è possibile intuire la cella I7 conterrà la formula = CODICE(I5) - 55; infatti sottraendo 55 al numero ASCII ottenuto si ottiene proprio il valore della cifra esadecimale (nel caso in esame la "A" vale 10); naturalmente la conversione deve avvenire solo se la cifra non è già un numero nel qual caso va riportato così com'è. Questa ulteriore evoluzione del procedimento permette al nostro sistema di convertire un numero da base qualsiasi, inferiore od uguale all'esadecimale, nel corrispondente valore decimale. Modificando alcune funzioni ma adottando il medesimo principio è possibile usare questo procedimento anche con JavaScript per chi possedesse delle nozioni di base di programmazione.

Come effettuare la conversione da una base decimale a base qualsiasi

Naturalmente per completare il nostro procedimento è necessario effettuare anche la conversione opposta passando da un numero decimale al corrispondente valore in una base fra quelle già viste.

Come procedere

Ricordiamo che un numero è composto di cifre il cui peso dipende dalla posizione

Cn Cn-1 ... C3 C2 C1 C0

se il numero in base 10 da convertire è N e la base nella quale convertirlo è b, si potrà procedere nel seguente modo:

Per determinare il valore delle cifre nella nuova base scelta si deve calcolare la divisione intera di N per b: N/b=N' con resto R' R' è la cifra più a destra nella rappresentazione in base b di N, cioè C0 = R' Si divide N'/b ottenendo N'/b = N'' con resto R'' e si ha che C1 = R'' Si ripete il procedimento fino a quando il risultato della divisione N? è uguale a 0

Complicato ? consideriamo ad esempio il numero (345)10 e calcoliamo la sua rappresentazione in base sedici:

345/16= 21 resto 9

21/16 = 1 resto 5

1/16 = 0 resto 1

Leggendo i resti dal basso verso l'alto, si ha che la rappresentazione esadecimale del numero decimale (345)10 è (159)16

Come possiamo tradurre questa operazione nel foglio elettronico?

Nell'esempio sottostante proviamo a convertire il numero 52 nel corrispondente valore binario (infatti nella casella D4 che rappresenta la base il valore è 2).

Responsive image
Responsive image
Responsive image

Nelle celle da B8 a C15 viene effettuata proprio l'operazione descritta sopra utilizzando due funzioni di Excel; la prima si chiama RESTO è restituisce il resto della divisione intera fra due numeri, la seconda si chiama INT e permette di ottenere il risultato intero della stessa divisione. I risultati della colonna C vengono inseriti nelle celle del numero convertito a rappresentare le cifre così ottenute.

Da notare almeno 3 cose: la prima è che possibile, modificando solo la base, convertire il numero decimale in qualsiasi base ma con l'accortezza di gestire le cifre esadecimali; infatti il risultato della divisione intera va da 0 a base-1 e quindi è possibile ottenere, come nell'esempio, il valore 12 che va convertito nella lettera "C" utilizzando la funzione CODICE.CARATT(65) che restituisce "A" oppure CODICE.CARATT(55+L4) che restituisce la lettera "C" analogamente a quanto fatto nella conversione da esadecimale a decimale con i codici ASCII. La seconda è che si deve tener conto del possibile overflow, cioè della possibilità che il numero da convertire sia troppo grande per le cifre predisposte e quindi il risultato dell'ultima divisione intera non sia 0; sarà opportuno prevedere un apposito controllo per segnalare errori di overflow. Il terzo aspetto interessante è che questa procedura è autovalidante: in pratica è possibile verificarne la correttezza usando la stessa procedura: per esempio (255)10 diventa, usando la procedura di conversione da decimale a binaria, (11111111)2; inserendo poi il risultato per la conversione opposta, se le procedure sono costruite correttamente, otterremo (255)10 altrimenti avremo un malfunzionamento.

Classi

terze

Durata

2 ore

Scopo

Realizzare una tabella "dinamica" di operazioni modulari.

Prerequisiti

Uso della funzione SE e della formattazione condizionata nel foglio elettronico.




Introduzione

L'aritmetica modulare, detta anche "algebra dell'orologio" perche' le ore rappresentano uno degli esempi classici di operazione in "modulo", si basa sull'aritmetica degli interi e, in sostanza, sulle operazioni in modulo n.

Prendiamo un numero M ed applichiamo il modulo n: il risultato di M modulo n sara' il resto della divisione intera:

5 modulo 2 = 1

perche' 5/2= 2 con resto 1

oppure, come spesso si fa per le ore

13 modulo 12 = 1

infatti, le ore 13 sono spesso indicate come l'ora 1 del pomeriggio.

Per maggiori approfondimenti teorici sull'algebra dell'orologio si rimanda allo specifico modulo teorico.




Dalla teoria alla pratica

In questo caso, creeremo due tabelle, una per la somma ed una per la moltiplicazione ed inseriremo, all'incrocio di ogni riga con ogni colonna il risultato dei due operatori con il modulo del numero riportato in alto a sinistra come si può vedere in figura


Responsive image

La costruzione sembra semplice ma, per evitare perdite di tempo per tabelle che possono avere anche piu' righe e colonne, la formula all'interno dell'incrocio deve essere costruita con un misto di indirizzamenti assoluti (con l'uso del simbolo $ per bloccare la riga e/o la colonna) e relativi (senza $) in modo che la formula "campione" sia poi "trascinata" automaticamente in ogni cella senza modifiche ulteriori. La formula fara' riferimento alla funzione resto ed alla operazione prevista: la cella c5 conterra' la funzione RESTO(dividendo;divisore) della somma di C4 e B5 modulo B4; in questo modo sarà possibile modificare il valore del modulo a piacere semplicemente cambiando il valore nella cella B4 per la somma o P4 per la moltiplicazione.

L'occasione potrebbe essere utile per introdurre (solo per Excel) la notazione in RC (riga e colonna); in questa modalita', attivabile sono in Excel da menu' Strumenti -> Opzioni -> Generale e poi spunta su Stile di riferimento R1C1, i riferimenti alle celle non sono in lettere e numeri ma solo in numeri anche per le colonne; per esempio la cella B4 diventa per R4C2 (cioè riga 4 colonna 2) e la cella C15 diventa R15C3. Ma, mentre per l'indirizzamento assoluto è solo un cambio di notazione, la vera novità rispetto alla rappresentazione tradizionale e' legata agli indirizzamenti relativi; se si volesse fare riferimento alla cella immediatamente a sinistra della cella R2C2 la scrittura sarebbe R2C[-1] cioè la colonna corrente (quella in cui sto scrivendo) -1 (cioe' quella subito a sinistra della corrente); analogamente se dovessi fare riferimento ad una cella 3 righe più in basso e 2 colonne più a destra, scriverei R[+3]C[+2]. Provi lo studente a verificare se, con lo stile di riferimento R1C1, la formula base che dovra' essere copiata in tutta la tabella risulta più semplice da costruire.


Responsive image

Si noti, nella figura, lo stile di riferimento della cella corrente in alto a sinistra.

Per migliorare la leggibilita' della tabella, sarebbe utile che siano omesse le celle "ridondanti" cioè tutte quelle celle che fanno riferimento a righe e colonne superiori o uguali al modulo dato che, in questo caso, sono una riproposizione degli stessi valori.


Responsive image

Si noti in figura che i valori oltre il quadrato grigio sono riproposizioni degli stessi valori i sequenza presenti all'interno dello stesso.

La modifica proposta non e' legata all'algebra modulare ma permette di affinare alcune tecniche utili in altre applicazioni esplorando le possibilita' offerte dal foglio elettronico oltre a consentire di rendere dinamica la rappresentazione della tabella.

La tecnica da usare è quella dell'illusione ottica; i valori all'interno delle tabelle possono "sparire" in virtu' di un semplice SE: se la riga e la colonna esterne alla tabella sono inferiori al numero indicato in alto a sinistra allora si scrivera' la formula, altrimenti si scriverà una cella vuota (""); nello scrivere la funzione SE si porra' la massima attenzione ai riferimenti assoluti e relativi in modo che la formula "base" possa essere copiata senza variazioni in tutte le altre celle.


Responsive image

La dimensione della tabella variera' in funzione del numero indicato in alto a sinistra. Come si può notare però, gli indicatori di riga e colonna all'estremita' della tabella sono ancora visibili; per renderli "invisibili" non è però possibile utilizzare la funzione se perche' i valori stessi sono riferimento per le celle interne e devono essere presenti. Per farli "sparire" è opportuno usare la formattazione condizionata che, nel caso il valore sia superiore od uguale al modulo, ne modifichi l'aspetto con bianco su bianco in modo da renderlo "invisibile".


Responsive image

esempio di tabella in modulo 8

Classi

terze

Durata

4 ore

Scopo

Realizzare un'applicazione con il foglio elettronico che fornisca le soluzioni ad un'equazione di 2° grado.

Prerequisiti

Uso della funzione SE nel foglio elettronico.




Introduzione

Come sempre lo scopo della nostra attività non è quello di trovare la soluzione ad una specifica equazione di secondo grado, ma impostare un metodo che consenta di risolvere qualsiasi equazione di secondo grado "gestendo" anche situazioni particolari e consentendo un facile inserimento dell'equazione stessa. Un'equazione di secondo grado si presenta nella forma generale ax2 + bx + c = 0 dove a, b e c sono chiamati coefficienti e sono rappresentati da numero reali a caratterizzare la specifica equazione; le due soluzioni, generalmente indicate come X1 e X2, sono ottenibili da una formula piuttosto conosciuta

Responsive image
la soluzione X1 si avrà sommando la radice di delta, X2 sottraendo la radice di delta. Questa formula però presenta delle insidie legate in particolare alla mancanza di soluzioni in campo reale in determinate situazioni; questa combinazione si presenta quando la parte sotto la radice quadrata, chiamata anche delta (indicato anche con il simbolo %u0394), è inferiore allo 0; come già detto, in questo caso le soluzioni sono impossibili nel campo dei numeri reali (anche se presenti nel campo dei numeri complessi); un'altra situazione particolarmente interessante è quella delle soluzioni UGUALI che si presenta quando il delta è uguale a 0. Ricapitolando, un'equazione di secondo grado, chiamata anche quadratica, è un'equazione ad una sola incognita con un grado pari a 2 ed ha 3 possibili esiti:
  • due soluzioni distinte
  • due soluzioni coincidenti
  • nessuna soluzione in campo reale




Dalla teoria alla pratica

Utilizzando il foglio elettronico per questo esercizio, un aspetto da non trascurare è la scrittura dell'equazione; l'equazione deve essere descritta attraverso i coefficienti a,b e c ma la loro presentazione può rendere semplice o complicata l'interpretazione dell'equazione stessa da parte dell'utilizzatore che, rammentiamolo, spesso non è colui che ha scritto il foglio elettronico.

Una soluzione semplice per inserire e proporre l'equazione può essere quella indicata di seguito


Responsive image

Come si può notare le celle con sfondo grigio sono quelle dove vanno inseriti i coefficienti che permettono di descrivere una qualsiasi equazione (quello riportato in figura è solo un esempio); nel contempo l'equazione è perfettamente riconoscibile come tale. Ora non resterà che individuare delle celle nelle quali proporre le soluzioni a partire dalla formula risolutiva prima descritta. Non si deve dimenticare però che, nel caso di delta negativo o nullo, si presentano delle situazioni che vanno ben evidenziate; quindi, anche per semplificare le operazioni di controllo, vale la pena di calcolare il delta in una cella intermedia.


Responsive image

Le formule non presentano particolari insidie ma si deve fare attenzione alla priorità degli operatori aritmetici ed all'uso delle parentesi.

Come detto in precedenza ci sono delle situazioni in cui non c'è soluzione nel campo reale ed il foglio elettronico reagisce con degli errori:


Responsive image

oppure nel caso in cui il coefficiente a valga zero non abbiamo più un'equazione di secondo grado:


Responsive image

Come gestire queste "anomalie" ? utilizzando la funzione SE anche nella sua forma "annidata" o "nidificata" ma così è un SE annidato ? in sostanza è una funzione SE dentro un'altra funzione SE e serve per gestire non 2 ma 3 o più possibilità a fronte di 2 o più condizioni:

SE "normale"

SE (condizione; azione per vero; azione per falso)

SE "annidato"

SE(condizione1 ; azione per vero 1; SE(condizione2 ; azione per vero 2 ; azione per falso))

Come si può notare nel primo caso le possibili azioni sono 2 (azione per vero, azione per falso) mentre nel secondo caso sono 3 (azione per vero 1, azione per vero 2, azione per falso).

Ma come si applica il SE annidato al contesto ?

Nel caso volessimo gestire solo la presenza o l"assenza di soluzioni, sarebbe sufficiente un solo SE:

SE(delta < 0; "IMPOSSIBILE" ; esegui la formula risolutiva)

ottenendo un risultato simile a questo


Responsive image

Ma se, nel caso avessimo un delta pari a zero, volessimo mettere in rilevo questa situazione eccezionale scrivendo "uguale a X" nella casella della soluzione X2, allora la casella che contiene la soluzione X2 avrebbe 3 possibili esiti:

SE(delta<0;"IMPOSSIBILE"SE(delta = 0; "UGUALE A X1"; =soluzione per X2))

presentando una situazione come quella nella figura seguente


Responsive image

La stessa tecnica può essere usata per indicare che l?equazione non è di secondo grado se il coefficiente a è pari a zero.

Un'ultima annotazione riguarda la presentazione dei risultati: generalmente le soluzioni fratte vengono proposte nella loro forma frazionaria (1/2) mentre il foglio elettronico le propone come risultato nella frazione (0,5) .

Questa difformità può essere corretta utilizzando una formattazione personalizzata delle celle con le soluzioni.


Classi

terze

Durata

6 ore

Scopo

Realizzare un'applicazione con il foglio elettronico che permetta di descrivere una funzione e di ottenere il suo grafico in un intervallo dell'asse X.

Prerequisiti

Indirizzamenti assoluti e relativi, uso dei grafici a dispersione.




Introduzione   

Questa esercitazione è la base per moltissime altre che prevedono l'utilizzo di grafici per svariati scopi; è importante quindi capire chiaramente i vari passaggi che portano alla realizzazione della procedura perché la stessa ricorrerà spesso in altre situazioni.

La nostra funzione può essere definita attraverso i suoi coefficienti; la procedura vale per funzioni di qualsiasi grado ma il grado massimo deve essere definito al momento della creazione del foglio.

Se definiamo come 2 il grado massimo della nostra funzione, la stessa si presenterà così:

f(x) = ax2 + bx + c

dove a, b e c sono chiamati coefficienti e sono rappresentati da numero reali a caratterizzare la specifica funzione; naturalmente, azzerando il coefficiente a si può ottenere una funzione di grado inferiore; quindi la costruzione definisce il grado massimo della funzione mentre quello minimo è 1.

Ma come si passa dalla definizione della funzione al suo grafico ? è necessario individuare una serie di punti in coordinate X e Y che appartengono alla funzione un po' come si fa su un foglio di carta millimetrata con la calcolatrice.

Quanti punti ? dipendono dalla complessità della funzione, ma poichè non saremo noi a dover fare i calcoli è opportuno definire un numero elevato di punti (per esempio 1000) che comunque andrà definito nella fase di costruzione del foglio. In generale, maggiore è il numero di punti maggiore sarà la definizione grafica della funzione.

Un altro aspetto da tenere in considerazione è che il grafico della funzione si applica all'asse X che è infinito; naturalmente sul foglio elettronico dobbiamo definire dei valori di intervallo finito, da X1 a Xn , nel quale rappresentare il grafico; questi valori dovranno essere variabili perchè non possiamo sapere a priori in quale porzione dell'asse X osservare il nostro grafico in modo da avere un risultato "interessante".




Dalla teoria alla pratica

Utilizzando il foglio elettronico per questo esercizio, un aspetto da non trascurare è la scrittura della funzione; l'equazione deve essere descritta attraverso i coefficienti a,b e c ma la loro presentazione può rendere semplice o complicata l'interpretazione della funzione stessa da parte dell'utilizzatore che, rammentiamolo, spesso non è colui che ha scritto il foglio elettronico.

Una soluzione semplice ed efficace per inserire e proporre la funzione può essere quella indicata di seguito:

Responsive image

Come si può notare le celle con sfondo grigio sono quelle dove vanno inseriti i coefficienti che permettono di descrivere una qualsiasi funzione (nell'esempio riportato in figura il grado massimo è 2); nel contempo la funzione è perfettamente riconoscibile come tale.

Inoltre è stato definito il numero di punti (valore n=1000) e l'intervallo dell'asse X nel quale rappresentare la funzione (valore iniziale X1 =-2; valore finale Xn =+2);

Ora non ci resta che definire i 1000 punti sull'asse X dai quali ricavare le corrispondenti coordinate Y. Ma come procedere per definire i punti ?

il modo più semplice è individuare i punti uniformemente distribuiti lungo il segmento compreso fra le coordinate X1 ed Xn sull'asse X. Ma qual è la distanza costante fra questi punti ?

Ci può aiutare una semplice osservazione. Se consideriamo un segmento S su cui vogliamo individuare 3 punti equidistanti otterremo una distribuzione dei punti come in figura

Responsive image

la distanza fra i punti, in questo caso, è pari alla metà della lunghezza del segmento:

distanza fra i 3 punti = lunghezza S / 2

nel caso volessimo ottenere 4 punti sullo stesso segmento, avremmo la situazione come da figura seguente

Responsive image

la distanza fra i punti, in questo caso, è pari ad un terzo della lunghezza del segmento:

distanza fra 4 punti = lunghezza S / 3

in generale se vogliamo individuare la distanza fra n punti equidistanti su un segmento la formula sarà:

distanza fra n punti = lunghezza S / (n -1) applicando questa formula al nostro foglio, l'intervallo fra i nostri punti sull'asse X sarà:

lunghezza del segmento / (n - 1)

nello specifico, dato che la lunghezza di un segmento sull'asse X è pari alla differenza fra le coordinate X, otterremo:

intervallo fra i punti = (Xn - X1 )/(n-1)

Come applicare questa osservazione al nostro sistema ?

La prima coordinata X è pari al valore di X1

La seconda coordinata X sarà pari al valore della coordinata X1 + l'intervallo trovato in precedenza

La terza coordinata X sarà pari al valore della coordinata X2 + l'intervallo

La quarta coordinata X sarà pari al valore della coordinata X3 + l'intervallo

E così via.

Quindi il valore successivo della coordinata X si troverà a partire dal valore precedente incrementato dell'intervallo. Se la formula "base" verrà impostata correttamente, utilizzando in modo opportuno indirizzamenti assoluti e relativi, sarà sufficiente copiarla per 999 righe fino ad arrivare al 1000-simo valore delle X; per capire se l'operazione è stata svolta correttamente, l'ultimo valore dovrà assumere un valore pari a quello impostato per Xn.


Responsive image

Il calcolo dei valori della Y è piuttosto semplice, essendo noti i coefficienti che descrivono la funzione ed i valori della X corrispondenti. Anche in questo caso, usando opportunamente indirizzamenti assoluti e relativi e costruendo correttamente la formula base, sarà sufficiente "trascinarla" sulle righe sottostanti per 999 volte.


Responsive image

Ora abbiamo una sequenza di coordinate di punti sul piano cartesiano che appartengono alla funzione definita. Selezionando tutti i valori della X ed i valori della Y possiamo procedere all'autocomposizione del grafico: è molto importante utilizzare, come tipo di grafico, la "dispersione XY" che mette in relazione i valori X con i valori Y; utilizzando altri tipi di grafici si potrà ottenere forse un risultato simile ma l'asse delle X apparirà scorretto perché enumererà i punti a 1 a 1000 anzichè assumere i valori previsti per la X. Anche la scelta del tratto per il grafico è molto importante è dovrà orientarsi verso le linee smussate e senza punti.



Otterremo quindi un grafico dinamico simile a questo:


Responsive image

Dinamico perché sarà sufficiente variare l'intervallo X1 -Xn e/o i coefficienti che definiscono la funzione, per ottenere istantaneamente e senza interventi ulteriori, un nuovo grafico:


Responsive image