|
Appunti scientifiche |
|
Visite: 1084 | Gradito: | [ Medio appunti ] |
Leggi anche appunti:Matematica. . . mente - tesinaMATEMATICA. . . MENTE Come Falda di tettoFALDA DI TETTO Si decide di utilizzare una soletta in latero cemento Calcolo combinatorioCALCOLO COMBINATORIO Disposizioni semplici di n oggetti DEFINIZIONE |
RELAZIONE DI CALCOLO
NUMERI INDICI SEMPLICI E COMPOSTI
Aspetto matematico
Una semplice elaborazione dei dati, che permette di confrontare meglio le intensità di fenomeni simili o diversi, si può ottenere seguendo due metodi.
Un primo metodo consiste nel calcolare le differenze assolute o relative. Questo metodo a noi non interessa, ma ci interessa il secondo.
Un secondo metodo consiste nel calcolare i rapporti, espressi solitamente in percentuale, fra misure di quantità omogenee o anche eterogenee.
Un rapporto è detto statistico se è ottenuto da due dati statistici, o da un dato statistico e uno non statistico.
Esistono vari tipi di rapporti statistici, quello che a noi interessa sono i numeri indici.
NUMERI INDICI SEMPLICI
I numeri indici sono rapporti (espressi in percentuali) fra le intensità di un certo fenomeno in tempi diversi o in luoghi diversi.
I numeri indici a base fissa si calcolano scegliendo anzitutto un dato come base (o il primo, o l'ultimo, o un valore medio) e dividendo tutti gli altri dati per la base e, infine, moltiplicando il risultato per 100, se si vuole l'indice in percentuale.
Si calcolano, talvolta, (soprattutto per le serie storiche) i numeri indici a base mobile, che si ricavano prendendo, per ciascuno, come base il dato precedente.
I numeri indici a base fissa mettono in evidenzia, meglio dei dati grezzi, la variazione dei dati rispetto alla base, mentre i numeri indici a base mobile evidenziano la variazione di un dato rispetto al dato precedente.
Qui sotto è riportato uno schema per il calcolo dei numeri indici semplici:
E' stato posto uguale a 100 il valore corrispondente al tempo t1.
Tempo (es. anni) |
Intensità |
Indici a base fissa |
Indici a base mobile |
t1 |
a 1 |
|
|
t 2 |
a 2 |
|
|
t 3 |
a 3 |
|
|
|
|
|
|
t n |
a n |
|
|
NUMERI INDICI COMPOSTI
In statistica economica si utilizzano frequentemente i numeri indici composti che esprimono la variazione di più fenomeni.
Esempio:
Data la seguente tabella della rilevazione dei prezzi medi al dettaglio, di tre prodotti alimentari: pasta, olio, zucchero.
Anni |
Pasta |
Olio |
Zucchero |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Vogliamo determinare un indice composto che tenga conto della variazione dei prezzi dei tre prodotti.
Possiamo seguire tre metodi, fra cui:
a) Metodo della media dei numeri indici
Un metodo molto applicato, detto metodo della media dei numeri indici, consiste nel calcolare per ogni bene i numeri indici semplici a base fissa rispetto a uno stesso anno e quindi calcolare, per ogni anno, la media aritmetica dei numeri indici semplici; questa media è il numero indice composto.
Nel caso dell'esempio considerato, prendiamo come base il 1996; redigiamo la tabella dei numeri indici semplici e nell'ultima colonna calcoliamo i numeri indici composti:
Anni |
Numeri indici semplici |
Numeri indici composti |
||
Pasta |
Olio |
Zucchero |
||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
La colonna dei numeri indici composti si ottiene calcolando la media aritmetica in orizzontale dei numeri indici semplici di ciascun prodotto:
per il 1997:
per il 1998:
ecc.
b) Metodo dei numeri indici delle medie
Un altro metodo utilizzato per il calcolo dei numeri indici composti, detto metodo dei numeri indici delle medie, consiste nel calcolare per ogni anno il prezzo medio dei tre prodotti e poi determinare i numeri indici di questi prezzi medi riferiti a un anno assunto come base fissa.
I risultati ottenuti sono generalmente diversi da quelli ottenuti con il metodo precedente.
Con i dati della tabella della rilevazione dei prezzi calcoliamo per ogni anno il prezzo medio dei tre prodotti con la media aritmetica:
per il 1996:
per il 1997:
e cosi via.
Assumendo come base il prezzo medio dell'anno 1996 si calcolano i numeri indici dei prezzi medi riferiti a quell'anno. Si ha la seguente tabella:
Anni |
Prezzi medi |
Numeri indici composti |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Questo metodo si può applicare quando i valori dei prezzi non sono molto diversi fra loro, poiché se il prezzo di un prodotto fosse molto superiore ( o molto inferiore ) a quello degli altri, le medie, e conseguentemente i numeri indici, risentirebbero maggiormente delle variazioni del prezzo di questo prodotto.
c) Metodo aggregativi o dei totali.
Questo è un altro metodo per calcolare i numeri indici composti.
Assumendo come base il prezzo medio dell'anno 1996 si calcolano i numeri indici riferiti a quell'anno. Si ha la seguente tabella:
Anni |
Pasta |
Olio |
Zucchero |
Totale |
Indici |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Base fissa 1996:
Totale 1996:
Totale 1997:
E cosi via.
Indice per il 1996:
Indice per il 1997:
Ecc.
Aspetto informatico
Il programma è stato digitato con il linguaggio di programmazione C. Esso è il seguente:
Il programma è stato implementato con delle procedure, esse vengono richiamate nella funzione main(principale) attraverso delle selezioni multiple, cioè a seconda della scelta effettuata dall'utente viene richiamata la funzione specifica per il calcolo.
Adesso elencherò tutte le funzioni:
Prima di iniziare un programma C++ è indispensabile l'utilizzo delle librerie:
#include <stdio.h>
#include <stdlib.h>
L'include è una direttiva del preprocessore, un comando, che permette di richiamare le librerie standard del C. Senza librerie un programma non avrebbe a disposizione i comandi per eseguire anche le operazione più semplici, come leggere un file o stampare a video una scritta.
Dopo le librerie è stata usata la funzione:
#define max 100
Questa funzione non fa altro che sostituire il valore 100 ovunque incontra il termine max.
La funzione principale in un qualsiasi programma C è la main che, in questo caso, non ha parametri, ma può ricevere anche degli input da riga di comando. Il main è indispensabile ed unico e deve esserci sempre.
void main ()
Subito dopo sono stati dichiarati i prototipi di funzioni e sono i seguenti:
void base_fissa (float[max]);
void base_mobile (float[max]);
void media_indici (float[max],float[max],float[max]);
void indici_media (float[max],float[max],float[max]);
void aggregativo (float[max],float[max],float[max]);
Nel programma vengono utilizzate le funzioni:
system('pause');
system('cls');
La prima funzione viene utilizzata per bloccare lo schermo, mentre la seconda per pulire lo schermo.
Funzione main()
Nella funzione principale main, sono state implementate tre selezioni multiple (switch). Questo per permettere all'utente quale calcolo effettuare.
Il primo menù permette di scegliere quali indici calcolare (semplici, o composti), dopo aver digitato la scelta viene attivato il secondo menù. Se è stata digitato il carattere 'a' cioè numeri indici semplici viene attivato un altro menù a scelta, per decidere se calcolarli a base fissa o mobile, dopo aver deciso come calcolarli (a base fissa, o mobile) vengono attivate le procedure specifiche per quel tipo di calcolo. Invece se viene digitato il carattere 'b' cioè numeri indici composti, viene attivato un altro menù per far decidere quale metodo utilizzare per calcolare gli indici, come sappiamo ne sono tre. Come prima, dopo aver scelto il metodo vengono attivate le procedure specifiche.
Sulle varie selezioni multiple sono stati fatti controlli per far si, che quando viene inserito un carattere non conforme al menù, lo si fa reinserire.
Il programma è stato implementato in modo che si può eseguire più di un calcolo, e si esce solo digitando il tasto corrispondente a USCITA. Ciò è stato fatto semplicemente racchiudendo tute le selezioni multiple in una struttura postcondizionale(Do_while).
Funzione base_fissa()
In questa procedura si calcolano gli indici a base fissa.
Per prima cosa si deve inserire su quanti valori deve essere effettuato il calcolo.
Cioè:
printf('n NUMERO DATI DA CONSIDERARE: ');
scanf('%d',&n);
Poi in una struttura per enumerazione (for) vengono letti gli n valori. Dopodichè i valori letti vengono visualizzati in output in una tabella. Poi si fa inserire la base. Sulla base viene fatto un controllo, perchè come sappiamo il valore può essere: o il primo, o l'ultimo,o il valore medio. Siccome si fa inserire la posizione della base nel vettore il controllo viene fatto sull'indice del vettore.
Cioè:
printf('ntt A : n');
for(i=0;i<n;i++)
system('cls');
printf('ntttt | A |n');
printf('tttt ---------n');
for(i=0;i<n;i++)
printf('tttt%d) |%6.2f |n',i+1,val_a[i]);
do
while((base>n)||(base<1)||(base>1)&&(base<n/2)||(base>n/2)&&(base<n));
Subito dopo vengono calcolati, e stampati in output in tabella gli indici semplici a base fissa. Essi vengono calcolati nell'ultimo printf() nel seguente modo:
system('cls');
printf('BASE FISSA: %6.2f nn',val_a[base-1]);
printf('nttt | A | indici A |n');
printf('ttt ----- ----- ------------n');
for(i=0;i<n;i++)
printf('ttt%d) | %6.2f | %6.2f |n',i+1,val_a[i],(val_a[i]/val_a[base-1])*100);
Funzione base_mobile()
Nella seguente funzione vengono calcolati gli indici a base mobile. Ricordo che essi vengono calcolati applicando le formule descritte nell'aspetto matematico.
Come prima, per prima cosa si fa inserire da tastiera il numero di valori da considerare. Cioè:
printf('n NUMERO DATI DA CONSIDERARE: ');
scanf('%d',&n);
Poi si prosegue con la lettura degli n valori, essa avviene in una struttura per enumerazione, perché utilizziamo array a una dimensione.
La lettura avviene nel seguente modo:
printf('nttA : n');
for(i=0;i<n;i++)
Dopo aver letto i valori, vengono calcolati gli indici semplici a base mobile. Il calcolo avviene in un for e man mano che vengono calcolati essi appaiono in output sistemati in una tabella. Tutto ciò è dato da:
system('cls');
printf('nttt | A | INDICI A |n');
printf('ttt ----- ----- ------------n');
printf('ttt1) | %6.2f | %6.2f |n',val_a[0],val_a[0]);
for(i=1;i<n;i++)
printf('ttt%d) | %6.2f | %6.2f |n',i+1,val_a[i],(val_a[i]/val_a[i-1])*100);
Funzione media_indici()
In questa funzione vengono calcolati gli indici composti con il metodo della media degli indici.
Come in tutte le funzioni per prima cosa viene letto da tastiera il numero di valori da prendere in considerazione. Il pezzo di programma è il seguente:
printf('n NUMERO DATI DA CONSIDERARE: ');
scanf('%d',&n);
Poi si vanno a leggere i valori corrispondenti ad A, B, C. nel seguente modo:
printf('nttA : n');
for(i=0;i<n;i++)
printf('nttB : n');
for(i=0;i<n;i++)
printf('nttC : n');
for(i=0;i<n;i++)
Dopodichè si vanno a calcolare gli indici a base fissa, e poi la media degli indici in orizzontale, ciò viene fatto applicando le formule sopra descritte. Tutto ciò viene sempre calcolato nell'ultimo printf().
Cioè:
system('cls');
printf('n | A | B | C | INDICI A | INDICI B | INDICI C | MEDIA INDICI |n');
printf(' -------- ----- ------ -------- ----- ------ --------n');
for(i=0;i<n;i++)
printf('%d) |%6.2f|%6.2f|%6.2f| %6.2f | %6.2f | %6.2f | %6.2f
n',i+1,val_a[i],val_b[i],val_c[i],(val_a[i]/val_a[0])*100,(val_b[i]/val_b[0])*100,(val _c[i]/val_c[0])*100,(((val_a[i]/val_a[0])*100)+((val_b[i]/val_b[0])*100)+((val_c[i]/val_c[0])*100)));
Funzione indici_media()
In questa funzione vengono calcolati gli indici composti a base fissa con il metodo degli indici dalla media.
La lettura dei valori da considerare, e i rispettivi valori A, B, C, viene fatta allo stesso modo di come è stato fatto nella funzione precedente ( media_indici() ), perciò è inutile ripeterlo.
Come sempre dopo aver letto i valori, vengono effettuati i calcoli,e i risultati vengono stampati in output in una tabella.
Nell'ultimo printf(), viene calcolata la media semplice per riga. Poi gli indici vengono calcolati facendo il rapporto della media semplice per riga e la media della base fissa cioè il primo valore e il tutto moltiplicato per cento. Tutto ciò viene fatto in un for.
Ia struttura è la seguente:
system('cls');
printf('ntt | A | B | C | MEDIA | INDICI | n');
printf('tt -------- ----- ------ ------n');
for(i=0;i<n;i++)
Funzione aggregativo()
Nella procedura vengono calcolati gli indici composti a base fissa con il metodo aggregativi o dei totali..
Come nei casi precedenti, anche qui la lettura dei valori da considerare, e i rispettivi valori A, B, C, viene fatta allo stesso modo dei casi precedenti..
Come sempre anche qui dopo aver letto i valori, vengono effettuati i calcoli,e i
risultati vengono visualizzati in tabella.
I calcoli vengono anche qui eseguiti in una struttura per enumerazione, all'interno di un printf();
Cioè:
system('cls');
printf('ntt | A | B | C | TOTALE | INDICI | n');
printf('tt -------- ----- ------ ------n');
for(i=0;i<n;i++)
La descrizione del programma è terminata. Ora elencherò tutte le variabili utilizzate e per ogni funzione farò una tavola delle variabili.
Tavola variabili funzione main()
NOME |
TIPO |
DESCRIZIONE |
|
|
|
scelta,scelta_1,scelta_2 |
intero |
Variabile scelta menù. |
val_a[max],val_b[max],val_c[max] |
reale |
Vettori utilizzati per la lettura dei valori. |
Tavola variabili funzione base_fissa()
NOME |
TIPO |
DESCRIZIONE |
|
|
|
n |
intero |
Variabile per leggere i valori da considerare. |
i |
intero |
Indice for |
Base |
intero |
Variabile per la lettura della base |
Tavola variabili funzione base_mobile()
NOME |
TIPO |
DESCRIZIONE |
|
|
|
n |
intero |
Variabile per leggere i valori da considerare. |
i |
intero |
Indice for |
Tavola variabili funzione media_indici()
Tavola variabili funzione indici_media()
Tavola variabili funzione aggregativo()
NOME |
TIPO |
DESCRIZIONE |
|
|
|
n |
intero |
Variabile per leggere i valori da considerare. |
i |
intero |
Indice for |
In queste ultime tre funzioni le variabili utilizzate sono le stesse e in più hanno la stessa funzione.
Qui sotto c'è l'allegato del programma in C.
Appunti su: |
|
Appunti Statistica | |
Tesine Contabilita | |
Lezioni Geografia | |