Concetti Chiave
- Una funzione è un sottoprogramma progettato per risolvere un problema specifico e restituisce un risultato senza modificare gli argomenti ricevuti.
- I sottoprogrammi consentono di evitare la duplicazione del codice, facilitano il riutilizzo di codice già funzionante e semplificano la ricerca di errori nel programma.
- Le variabili possono essere globali, disponibili durante l'intero programma, o locali, utilizzate solo all'interno delle funzioni in cui sono definite.
- Le strutture di dati possono essere omogenee o eterogenee, statiche o dinamiche, sequenziali o non sequenziali, a seconda di come sono organizzati e accessibili in memoria.
- Il procedimento top down consiste nel risolvere un problema partendo da un approccio generale e suddividendolo in sottoprogrammi per affrontare ciascuna parte in modo specifico.
Qual è la definizione di funzione?
Una funzione è un sottoprogramma contenente le istruzioni che risolvono uno specifico problema. Il valore della funzione deve essere usato come elemento di un'istruzione.
La funzione può essere vista come una procedura con restrinzioni: essa non effettua alcuna azione visibile sul mondo circostante, non modifica gli argomenti ricevuti dal chiamante e realizza i suoi effetti restituendo un risultato. A differenza delle procedure, le funzioni restituiscono un risultato, oltre a svolgere un'azione, per questo motivo la funzione può essere chiamata in un'assegnazione a una variabile, oppure all'interno di una generica espressione.
Vantaggi dei sottoprogrammi
I vantaggi derivante dall'uso dei sottoprogrammi sono:
- è inutile scrivere due volte lo stesso codice;
- è inutile scrivere un codice che qualcun'altro ha gia scritto e che funziona;
- facilita la ricerca di un eventuale problema all'interno del programma.
Le variabili.
Esistono due tipi di variabili:
- Variabili globali, che riguardano tutto il programma e sono disponibili per tutta l'esecuzione;
- Variabili locali, che si trovano all'interno delle funzioni e vengono utilizzate solo in quella parte.
Parametri nei moduli
I parametri sono una lista di dati che possono essere scambiati tra un modulo e l'altro. Le variabili che compaiono nella definizione di un modulo vengono dette parametri formali, mentre i dati che li sostituiscono (che sostituiscono i parametri formali), al momento del richiamo del modulo, sono chiamati parametri attuali. Esistono due tipi di parametri formali: i parametri di imput (forniti all'inizio) e parametri di output (restituiti alla fine).
Strutture di dati
Con il termine struttura di dati intendiamo un raggruppamento di dati tali da poter essere considerati come un unico oggetto.
In informatica esistono vari tipi di strutture di dati:
- Tipo di dati di cui sono composte. Si dicono omogenee le strutture di dati sono composte da dati dello stesso tipo, eterogenee nel caso contrario (quando le strutture di dati sono composte da dati differenti).
- Modalità secondo cui è effetuata l'allocazione. Le strutture di dati si dicono statiche se la loro occupazione di memoria, una volta fissata, non può più essere modificata, dinamiche se può variare durante l'esecuzione.
- Disposizione dei singoli dati in memoria. Le strutture di dati si dicono sequenziali se i dati occupano locazioni contigue in memoria, non sequenziali nel caso contrario.
- Metodo di accesso, cioè il modo in cui è possibile individuare ogni singolo elemento al loro interno. Si dicono ad accesso sequenziale le strutture di dati quando il reperimento di un elemento avviene scorrendo la struttura del primo elemento uno dopo l'altro; ad accesso diretto sono quelle in cui è possibile posizionarsi direttamente sull'elemento desiderato.
Strutture astratte e concrete
Le strutture dei dati comprendono:
- Le strutture astratte, che sono strutture logiche, che derivano dalle relazioni esistenti tre i dati.
- Le le strutture concrete (o interne), interne nella memoria, ossia dall'insieme di celle contenenti le informazioni e gruppi di regole per il loro ordinamento logico.
La struttura sequenziale è una struttura concreta di memoria, caratterizzata da un insieme di elementi. Tali elementi sono allocati in celle di memoria.
La struttura sequenziale è la struttura concreta più semplice, perchè è quella propria della memoria centrale. La sua caratteristica di essere composta da un numero definito di elementi la rende adatta a memorizzare strutture astratte.
Caratteristiche del vettore
Un vettore è una struttura di dati, di tipo sequenziale, identificata da un nome e costituita da un insieme di elementi , individuabili per mezzo di un indice.
Un vettore è un insieme di variabili dello stesso tipo a cui è possibile accedere tramite un nome comune in cui è possibile referenziare uno specifico elemento tramite un indice. Nel vettore esiste un nome, che identifica il vettore come struttura in cui i suoi singoli elementi verranno referenziati specificando la loro posizione relativa all'interno della struttura (indice).
L'indice è generalmente numerico e i valori che può assumere sono numeri interi contigui che partono da 0 a 1.
Procedimento top down
Top down è un procedimento di risoluzione degli algoritmi e serve per la realizzazione dei sottoprogrammi.
Si può trovare dall'alto verso il basso; dal problema generale ai sottoprogrammi), partendo dal problema generale e poi dividendo il resto del programma in uno o più sottoprogrammi che risolvono parti del problema.
Se viene chiamato un sottoprogramma, quello chiamato esegue le operazioni e restituisce il risultato al programma principale o quello che lo chiama.
Domande da interrogazione
- Qual è la definizione di funzione in programmazione?
- Quali sono i vantaggi dell'uso dei sottoprogrammi?
- Qual è la differenza tra variabili globali e locali?
- Cosa sono i parametri nei moduli?
- Che cosa caratterizza una struttura di dati sequenziale?
Una funzione è un sottoprogramma che risolve uno specifico problema e restituisce un risultato, senza modificare gli argomenti ricevuti dal chiamante.
I sottoprogrammi evitano la duplicazione del codice, facilitano la ricerca di problemi e permettono di riutilizzare codice già funzionante.
Le variabili globali sono disponibili per tutto il programma, mentre le variabili locali sono utilizzabili solo all'interno delle funzioni in cui sono definite.
I parametri sono dati scambiati tra moduli; i parametri formali sono definiti nel modulo, mentre i parametri attuali sono i dati forniti al momento del richiamo.
Una struttura di dati sequenziale è composta da elementi allocati in celle di memoria contigue e permette l'accesso agli elementi tramite un indice numerico.