|
Un esempio di programma... |
|
Un programma è in definitiva un sistema automatico per risolvere
molti problemi analoghi che si presentano frequentemente. In
effetti per realizzare un programma dobbiamo conoscere il
problema in tutti i suoi aspetti e scrivere una procedura in
grado di risolvere ogni possibile caso. Dobbiamo quindi
stabilire i dati necessari, i risultati che desideriamo ottenere
e l'algoritmo cioè il processo matematico che risolve il
problema. Definiti questi elementi dobbiamo tradurre il tutto in
linguaggio comprensibile per il computer che da quel momento con
il nostro programma si occuperà di risolvere ogni problema di
quel tipo in modo rapido ed efficiente.
Dobbiamo ad esempio
calcolare la superficie delle stanze di una o più case sarà
necessario misurare larghezza e lunghezza di ogni stanza per
ciascuna abitazione, eseguire le
moltiplicazioni e sommare i risultati: possiamo farlo a mano o
utilizzare una calcolatrice in entrambi i casi sarà un lavoro
lungo e decisamente noioso perché ripetitivo, la nostra
attenzione calerà e dovremo ripetere tutto almeno due volte per
essere certi del risultato!
Se invece creiamo un programma tutto sarà più semplice e sicuro
basterà solo inserire con attenzione i dati e saremo certi del
risultato che potremo anche stampare o conservare per futuri
utilizzi. Nel caso di più case da misurare i pochi minuti
dedicati a scrivere il programma frutteranno con gli interessi e
ci faranno risparmiare ore e ore.
Ma come fare? Il
modo più semplice è utilizzare un foglio elettronico: un
programma nato negli anni '70 per opera di un geniale
programmatore che cominciò a riflettere sulla circostanza che la
quasi totalità dei problemi di ogni giorno vengono risolti
creando una tabella su un blocco notes con valori legati da
semplici operazioni matematiche e scrisse Visicalc. Da allora i fogli elettronici
si sono evoluti enormemente proprio in virtù della loro
formidabile utilità e sono divenuti in realtà il più semplice ed
efficace strumento per realizzare programmi.
Il migliore
attualmente è Open Office la suite di programmi gratuiti che ha
costretto all'angolo Microsoft Office e mette a disposizione di
tutti e gratis un formidabile foglio elettronico (se già non lo
avete installato potete
ottenerlo subito nel nostro portale), se state utilizzando
ancora Excel (il foglio di calcolo di Office) sarà l'occasione
per scoprire che potete fare le stesse cose e in modo analogo ma
spendendo tanti soldi e se conoscete già Excel quanto sia facile migrare ad Open
Office che presenta molte caratteristiche migliori e innovative
tra l'altro Open Office pur potendo aprire e salvare qualsiasi
documento stile MS Office può generare un nuovo tipo di
documenti (Open Document) che sono già stati o si avviano ad
essere dichiarati standard e addirittura unici ammissibili per
la Comunità Europea e gli Stati Americani in quanto più
efficienti e non soggetti alle restrizioni attualmente imposte
da Microsoft tra l'altro pericolose per la sicurezza.
Senza dimenticare che esistono versioni di Open Office per tutti
i sistemi operativi più diffusi e questo permette uno scambio
assolutamente libero e privo di restrizioni dei dati e dei
programmi realizzati.
Nel ns. esempio i dati saranno le dimensioni delle stanze, i
risultati l'area di ciascuna stanza e la superficie totale della
casa, gli algoritmi:
Larghezza x Lunghezza = Area della
Stanza
somma di tutte le Aree = Area complessiva della casa.
Per scrivere più
velocemente un programma possiamo utilizzare questo metodo
creare un esempio (semplice) del problema e scrivere il
programma per risolverlo: questa tecnica ci farà risparmiare
tempo e fatica quindi per la ns. guida abbiamo immaginato un
appartamento con 8 vani e misure inventate ma possibili. |
|
Come
realizzarlo passo passo... |
|
 |
Aprite Open Office,
scegliete nuovo documento >> foglio elettronico:
apparirà una
griglia vuota divisa in righe e colonne ciascuna identificata
da un numero o da una lettera esattamente come in battaglia
navale con le barre dei menù e degli strumenti di più frequente
uso in alto.
Ogni singola casella si
chiama cella ed è identificata da una lettera e da un numero: la
cella B5 sarà quella all'incrocio della seconda colonna (B) con
la quinta riga (5), l'unica differenza con lo schema della
battaglia navale sarà che abbiamo molto più di 10 righe e
colonne.
Scegliamo subito un
nome per il ns. programma ad esempio Superfici Vani e dal menù
File salviamo il ns. file in formato Open Document (questa
scelta è ottimale ma non definitiva e potremo sempre salvarne in
qualsiasi momento una copia in formato diverso ad esempio MS
Excel se desideriamo darne una copia a qualcuno che non dispone
ancora
di Open Office). |
 |
Definiamo i
titoli delle colonne...
Per comodità iniziamo
subito ad
inserire le intestazioni definendo l'utilizzo di ciascuna
colonna:
Nota: la cella
evidenziata, in questo caso A3, è quella puntata dal mouse e
sulla quale possiamo inserire i dati o le formule come vedremo
più avanti.
|
 |
Inseriamo i
dati conosciuti ...
Digitiamo nella colonna
Vani i nomi delle stanza e in larghezza e lunghezza i dati
misurati relativi a quella stanza.
Otterremo una situazione simile a quella illustrata a fianco
nella quale abbiamo inserito i dati di un ipotetico
appartamento. La riga 2 è stata lasciata vuota esclusivamente
per migliorare la leggibilità della tabella quindi potete farlo
oppure no secondo le vs. personali preferenze.
Suggerimento:
è preferibile inserire numerosi dati per colonne digitando ogni
volta al termine dell'immissione il tasto [invio] in questo modo
il dato viene inserito e la selezione si sposta automaticamente
in basso di una cella (senza utilizzare il mouse o i tasti
freccia) rendendo tutto più rapido. |
 |
Inseriamo
la prima formula ...
Ora dobbiamo creare le
formule per il calcolo automatico dei dati.
Nella casella D3 dovrà comparire l'area del vano ingresso che si
ottiene moltiplicando il valore della cella B3 per quello della
cella C3.
Ogni cella del foglio può contenere dati (costanti che non
variano a meno che non li modifichiamo noi inserendone di nuovi)
o formule cioè risultati di calcoli.
Per specificare al PC che inseriamo una formula dovremo digitare
come primo carattere il simbolo =.
Quindi digitando nella cella D3 la sequenza:
=B3*C3
otterremo che il programma calcolerà automaticamente l'area del
primo vano.
Nota: i
computer utilizzano i simboli + e - per somme e sottrazioni ma *
e / per moltiplicare e dividere, ^ per elevare a potenza e
funzioni con nomi in lettere per le altre funzioni LOG per i
logaritmi decimali, RADQ per la radice quadrata, INT ecc. In
Open Office è sufficiente aprire il menù Inserisci > Funzione
per ottenere l'elenco di tutte le funzioni disponibili con la
spiegazione di quella selezionata.
Per inserire numeri
velocemente è utilissimo utilizzare il tastierino numerico a
destra ove troviamo i numeri disposti come nelle calcolatrici, i
tasti per le 4 operazioni, l'invio e il punto decimale. Nella
matematica evoluta si utilizza il punto decimale e così i
computer ma il recente cambio del sistema valutario che ha
introdotto l'€uro con le sue due cifre decimali ha modificato
questa impostazione riportando in auge la virgola anche per i
numeri quindi è necessario inserendo numeri decimali da una
tastiera italiana utilizzare come separatore la virgola (il
tasto accanto alla lettera M) fortunatamente Open Office dalla
versione 2.0 filtra il punto del tastierino numerico
automaticamente rendendo di nuovo agevole l'inserimento dei
numeri decimali con il solo tastierino numerico. |
 |
Inseriamo
le formule analoghe ...
Ora dobbiamo creare le
formule per il calcolo automatico dei dati.
Possiamo digitare nella cella D4 la sequenza:
=B4*C4
otterremo che il programma calcolerà automaticamente l'area del
secondo vano e così via sino all'ultima.
Suggerimento:
possiamo però utilizzare un sistema molto più rapido:
La formula sarà copiata
in tutte le celle in ciascuna modificata automaticamente con i
giusti riferimenti quindi nella cella D6 comparirà =B6*C6 e così
per tutte. |
 |
Calcoliamo
il totale ...
Naturalmente ci servirà
il totale delle superfici dei vani sarà sufficiente inserire in
D10 la formula:
=SOMMA(D3:D10)
questa formula sommerà
tutti i valori della colonna D nell'intervallo tra la riga 3 e
la 10 comprese.
Suggerimento:
anche per il totale possiamo anche utilizzare un sistema più
rapido:
-
selezioniamo la
cella D12
-
facciamo click sul
simbolo Σ
-
apparirà la formula
della somma per l'intervallo evidenziato in blu da D3 a D11
-
premendo invio o
con un click su segno verde di spunta apparso completerà la
formula
Nota: in
matematica il simbolo Σ significa somma di valori ed è molto
comodo per inserire le formule dei totali tenendo presente che
l'intervallo dei valori di default (il riquadro blu) può essere
facilmente modificato con il mouse per adattarlo a quanto
vogliamo calcolare, nel ns. esempio potremo restringere il
rettangolo blu per evidenziare l'intervallo D3 : D10 escludendo
la cella D11. |
|
Abbiamo realizzato
il ns. primo programma ...
Naturalmente sarà opportuno salvare il documento che potremo
stampare o richiamare in qualsiasi momento per utilizzarlo
nuovamente anche per calcolare le superfici di appartamenti
diversi: sarà sufficiente inserire nuovi dati e i risultati
delle formule saranno automaticamente aggiornati ad ogni nuova
immissione.
Nel caso un nuovo appartamento avesse meno o più stanze sarà
sufficiente eliminare o inserire righe, copiando la formula
dell'area per ogni nuova riga inserita mentre la formula del
totale sarà aggiornata automaticamente se avremo l'accortezza di
inserire le nuove righe dopo la terza e prima della decima.
|
|
Come
migliorarlo... |
|
Qualunque cosa è suscettibile di miglioramenti praticamente
infiniti il limite risiede nella efficacia di ognuno, nella
fantasia del programmatore e nella sua disponibilità di tempo.
Il programma appena realizzato funziona perfettamente ma potremo
renderlo più accattivante con alcuni semplici miglioramenti: |

 |
Definiamo
il formato dei numeri ...
-
Selezioniamo le tre
colonne che contengono valori numerici puntando il mouse
sull'intestazione della colonna B e trascinado il cursore
sino alla D mantenendo premuto il tasto sinistro
-
poi apriamo il menù
contestuale con un click destro del mouse
-
nella finestra di
dialogo scegliamo il formato più idoneo numero con due cifre
decimali e i separatori per le migliaia
-
click su OK per
chiudere la finestra e osservare il risultato
-
ora i numeri
saranno tutti incolonnati e sarà più facile ed immediato
rileggerli
|
 |
Larghezza
delle colonne ...
-
Portiamo il cursore
del mouse sulla linea di divisione fra le colonne nella
intestazione ad esempio tra B e C
-
il cursore si
trasforma in una linea verticale con due freccette ai lati
-
con il tasto
sinistro premuto spostiamo il mouse per stringere o
allargare la dimensione della colonna sino al valore
desiderato (compare una finestrella con l'indicazione del
valore in cm)
-
rilasciamo il tasto
e le dimensioni della colonna saranno quelle volute
-
eseguiamo la stessa
operazione per le altre colonne
|
 |
Evidenziare
gli elementi principali ...
-
Selezioniamo le
quattro celle che contengono le descrizioni puntando il
mouse sulla cella A1 e trascinando il cursore sino alla D1
mantenendo premuto il tasto sinistro
-
premiamo la solita
G marcata per avere i titoli in grassetto
-
eseguiamo le stesse
operazioni per la riga 12
|
|
|
|
|
Altre possibilità di
personalizzazione nella barra degli strumenti ... |
 |
↑ varia la
dimensione del carattere
↑ unisce celle
↑ rende visibili più o meno cifre decimali
↑ grassetto / corsivo / sottolineato
↑ varia il rientro a capo
↑ allineamento a destra / centrato / a
sinistra / giustificato
↑ aggiunge bordi e linee
↑ formati numeri: valuta /
percentuale / standard
↑ colore
carattere
↑ colore di fondo
Naturalmente
utilizzando i menù le personalizzazioni possono essere
innumerevoli ma è bene tenere conto di una scelta fondamentale:
l'utilizzo dei risultati |
 |
Se lo
schema è destinato ad essere visualizzato con il monitor del PC
e stampato solo occasionalmente si potrebbe optare per uno
schema di questo tipo ...
|
 |
Se dello
schema si devono
invece fare stampe frequenti allora sarà opportuno evitare i
colori e la stampa apparirà così ....
Nota:
la griglia di riferimento viene eliminata in fase di stampa
anche se è possibile farla stampare con l'apposita opzione, ma è
bene tenere presente che in questo caso stampa anche le linee
verticali ed orizzontali di tutte le celle del foglio anche di
quelle in effetti vuote. Così se si desidera mantenere delle
linee di riferimento è più elegante e pratico utilizzare le
opzioni dei bordi per le zone effettivamente utili. Normalmente
comunque se viene curato l'allineamento e la formattazione dei
dati, in specie quelli numerici si ottengono risultati molto
leggibili ed eleganti.
Suggerimento: è
molto importante adottare sin dal principio alcuni standard
nella programmazione, nel ns. esempio le descrizioni dei dati da
inserire sono allineate a sinistra mentre il totale che non
viene inserito ma calcolato è allineato a destra. |
|
Approfondimenti... |
|
L'esempio illustrato è indubbiamente semplice ma ciò non deve
trarre in inganno e con un foglio elettronico possono essere
realizzati programmi estremamente complessi ed utili per ogni
tipo di attività e persino giochi e programmi di disegno.
Rappresentano quindi una risorsa importantissima perchè
permettono di avvicinarsi gradualmente alla programmazione e
potremo anche scoprire che con essi è possibile realizzare in
brevissimo tempo veri e propri programmi che conserveranno
sempre la possibilità inestimabile di poter essere facilmente
sviluppati ulteriormente o adattati al mutare delle esigenze.
|
|
Per l'esempio illustrato è possibile scaricare il documento
nella sua versione definitiva nel quale possiamo notare che è
stata utilizzata un'altra caratteristica del foglio elettronico
le tabelle.
Versione 1 OPEN DOCUMENT
Versione 1 EXCEL 97/2000/XP
Quando creiamo un nuovo foglio elettronico appaiono sul margine
inferiore 3 linguette Tabella1 / Tabella2 / Tabella3 perchè in
realtà ogni documento può essere costituito da più fogli, detti
Tabelle e visualizzabili alternativamente con un click sulla
linguetta relativa.
Abbiamo eliminato la terza tabella e copiato la prima nella
seconda (per copiare una intera tabella è necessario
selezionarla tutta con un click nel punto di intersezione delle
intestazioni delle righe e delle colonne posto in alto a destra
poi click destro e copia, quindi selezionare l'altra tabella e
click destro e incolla) poi abbiamo eliminato gli sfondi e
riportato al nero tutti i caratteri.
Per comodità abbiamo chiamato (click destro sulla linguetta e
rinomina) le due tabelle rispettivamente Video e Stampa.
Sarà comodo utilizzare la prima quando si usa a video e stampare
la seconda (selezionando nel menù di stampa non Tutto ma Pagine
e inserendo 2 nella finestra di scelta delle pagine a fianco).
Potremo inserire i dati solo nella prima tabella e copiarli
nella seconda ogni volta ma caratteristica saliente delle
tabelle è quella di poter essere collegate fra loro, inserendo
infatti nella cella D4 della tabella Stampa la formula:
=Video.B4*Video.C4
e
copiandola con il sistema già visto nelle celle da D5 ad D11
sarà sufficiente inserire i dati solo nella prima tabella per
averli automaticamente replicati nella seconda destinata alla
stampa.
Per lo stesso motivo nella cella A4 inseriremo la formula:
=Video.A4
e copiandola nelle celle da A5 ad A11 sarà sufficiente inserire
anche i nomi delle stanze solo nella prima tabella per averli
automaticamente replicati nella seconda destinata alla stampa e
allo stesso modo le formule
=Video.B4
e =Video.C4
nelle relative colonne B e C con lo stesso sistema.
In sostanza se i riferimenti si limitano alla colonna e alla
riga il programma li ricerca nella stessa tabella se invece si
antepone il nome di un'altra tabella con un punto il riferimento
verrà cercato nella tabella indicata dal nome fornito ma con la
formattazione definita nella tabella di visualizzazione quindi i
nomi dei vani saranno in verde nella prima e in nero nella
seconda mentre con la semplice copia ciò non avviene.
Suggerimento:
per la versione definitiva su due tabelle è consigliabile creare
un foglio elettronico di base inserendo molte righe per i dati
almeno trenta, copiare le formule in tutte le righe e cancellare
i dati immessi ma non le formule e salvare il foglio nel formato
desiderato. Ogni volta che ci servirà il programma caricheremo
questo foglio base, lo salveremo immediatamente con un nuovo
nome (ad esempio Appartamento via Roma 37) e lavoreremo su
quello inserendo solo i nuovi dati senza dover cancellare quelli
esistenti: tutto sarà più rapido ed efficace e in questo modo
non dovremo modificare la struttura del foglio le righe senza
dati appariranno con degli zeri (oppure potremo cancellare le
righe inutilizzate) questa ulteriore versione può essere
scaricata qui di seguito:
Versione 2 OPEN DOCUMENT
Versione 2 EXCEL 97/2000/XP
E' bene riflettere che 30 righe possono sembrare troppe ma
spesso le stanze non sono rettangolari ma hanno forme complesse
che possono essere definite come serie di sub rettangoli ognuno
da inserire in una riga specifica ad esempio una a forma di L
può essere definita con 2 rettangoli o un corridoio a C con 3
rettangoli, ecc. |
Nella seconda
versione del foglio di calcolo oltre ad inserire nuove righe
abbiamo modificato le formule.
Se non vogliamo cancellare le righe inutilizzate e non
sopportiamo gli zeri possiamo utilizzare una espressione
condizionata:
=SE(Video.A4=0;"";Video.A4)
questa visualizza nella cella A4 della tabella Stampa un valore
che dipende dal contenuto della casella A4 della tabella Video:
se il valore in questa è zero eseguirà la prima istruzione
altrimenti la seconda.
I tre elementi sono contenuti nelle parentesi e separati dal
punto e virgola e la funzione si chiama SE (traduzione italiana
di IF il termine utilizzato per i salti condizionati al
verificarsi o non di una situazione).
Il primo elemento indica l'elemento e la condizione da
verificare: la cella Video.A4 è vuota?
-
SI la cella è
vuota
>>>>> allora nella cella Stampa.A4
verrà visualizzato uno spazio vuoto cioè una stringa nulla
definita da una coppia di virgolette senza nulla dentro ""
-
NO la cella
contiene qualcosa (testo o numeri)
>>>>> allora nella cella Stampa.A4
ne verrà visualizzato il contenuto
Naturalmente dovremo inserire anche analoghe funzioni per le
celle Stampa.B4 .... C4 e D4
e copiarne il contenuto in tutte le righe sino alla 34:
=SE(Video.B4=0;"";Video.B4)
=SE(Video.C4=0;"";Video.C4)
=SE(Video.D4=0;"";Video.D4)
ma sarà
in effetti sufficiente scrivere la formula nella casella A4
della tabella stampa, selezionarla con il mouse e copiarla, poi
selezionare con il mouse tutto l'intervallo delle quattro
colonne dalla casella A4 alla D34 e incollare: all'istante
saranno inserite tutte le formule con i riferimenti esatti,
decisamente molto comodo.
La tabella Stampa non esegue calcoli ma si limita a visualizzare
con la propria formattazione cioè che l'altra tabella (video)
calcola quindi non esistono calcoli in essa e tutti i dati vanno
sempre inseriti nella prima.
Ora per l'ultima fatica ci dedicheremo alla tabella Video nella
quale se lasciata come nella versione iniziale eliminando i dati
nelle colonne B e C apparirebbe una fila di 0,00 nella D. Per
evitarlo dobbiamo inserire una istruzione condizionale anche qui
ma poichè stavolta faremo riferimento unicamente a celle della
medesima tabella non dovremo specificarne il nome.
Quindi in D4 sostituiremo la formula precedente con una nuova
condizionale:
invece di =B4*C4
inseriamo =SE(C4=0;"";B4*C4)
che, come ormai sappiamo, non visualizza nulla se la cella C4 è
vuota o altrimenti visualizza il risultato del prodotto di B4
per C4. |
|
L'esempio proposto è ovviamente semplicissimo ma ci ha permesso
di introdurre alcuni concetti fondamentali per l'utilizzo dei
fogli elettronici e la programmazione in generale quali i
riferimenti relativi che permettono di copiare formule complesse
con semplicità senza doverle digitare e le funzioni condizionate
che permettono di ottenere risultati diversi in relazione ai
dati colonna portante di ogni programma.
Nei prossimi articoli tratteremo esempi sempre più complessi e
potrete anche scoprire che con un foglio elettronico si può far
fronte a qualsiasi esigenza produttiva. |