Fondamenti di Programmazione: Algoritmi, Linguaggi e Strutture Dati
Classificato in Informatica
Scritto il in italiano con una dimensione di 4,43 KB
Algoritmo
Un algoritmo è una sequenza finita, ordinata e di istruzioni chiare per risolvere un problema specifico.
Caratteristiche degli Algoritmi
- Ogni passo deve essere perfettamente definito.
- Ogni passo deve essere eseguito in un tempo finito.
- Deve esistere una serie di dati iniziali (input).
- Deve esistere un insieme di dati in uscita (output).
Loop o Ciclo
Un loop o ciclo è un insieme di istruzioni che vengono ripetute un numero finito di volte, spesso associato a una condizione. La condizione determina quando il ciclo termina. I cicli possono essere nidificati l'uno nell'altro e possono avere diversi cicli allo stesso livello, ma non si intersecano mai.
Programmazione
In informatica, la programmazione è un processo mediante il quale il codice sorgente di un programma per computer viene scritto (in un linguaggio di programmazione), testato e sottoposto a debug. Nell'ambito dei programmi informatici, essi sono gli elementi che compongono il software, ovvero l'insieme di istruzioni che l'hardware di un computer esegue per svolgere una data attività.
Linguaggi di Programmazione
Un linguaggio di programmazione è un insieme di simboli e di regole sintattiche e semantiche che definiscono la sua struttura e il significato dei suoi elementi ed espressioni. È usato per controllare il comportamento logico e fisico di una macchina.
Parole Riservate (Keywords)
Nei linguaggi di programmazione, una parola chiave (o keyword) è una parola che ha un significato speciale per il linguaggio e la sua grammatica, e che non può essere usata come identificatore in quel linguaggio.
Concetto di Programma
Un programma è un insieme di ordini che trasformano l'input in output, raggiungendo risultati comprensibili. Come? Utilizzando algoritmi che dettagliano i passi per raggiungere tali risultati.
Nella pratica, i dati di input sono strutture più o meno complesse, così come le strutture di dati risultanti.
Algoritmi + Strutture Dati = Programmi
La differenza tra un algoritmo e un programma è che quest'ultimo implementa l'algoritmo, generalmente traducendolo in un linguaggio di programmazione specifico. Un algoritmo è una sequenza finita, ordinata e univoca di istruzioni che risolvono un dato problema. Questa sequenza di istruzioni può essere ripetuta con la frequenza necessaria nell'ambito dello stesso programma, o durante l'esecuzione del programma in diverse occasioni.
Elementi di un Programma
Ciascuno degli ordini di un programma, che includono costanti, variabili, operatori ed espressioni, è chiamato frase o istruzione.
Tipi di Istruzioni (Dichiarazioni)
- Istruzioni di Input/Output: Consentono la comunicazione tra unità periferiche e memoria principale.
- Istruzioni di Assegnazione: Assegnano valori alle variabili.
- Istruzioni di Controllo: Permettono di interrompere la sequenza di comandi di un programma. Usano la diramazione condizionale basata su una condizione che supporta solo due risposte (vero/falso).
- Dichiarazioni di Variabili: Possono riservare aree di memoria per i dati.
- Procedure (o Sottoprogrammi): Questo modulo è definito dal programmatore come un insieme di istruzioni raggruppate in una singola unità.
Tipi di Strutture di Controllo
- Sequenza: È la disposizione di due o più istruzioni una dopo l'altra.
- Selezione o Alternativa: Permette di eseguire una o l'altra decisione in base al valore di una condizione.
- Iterazione (o Ciclo): È la ripetizione di una o più istruzioni per un certo numero di volte.
Modulo: Definizione e Caratteristiche
Un modulo è costituito da una o più dichiarazioni (frasi) che sono fisicamente raggruppate. Si può fare riferimento ad esso tramite un nome e può essere chiamato da diversi punti di un programma. Può essere: un programma, una funzione o una subroutine.
Contatore
Un contatore è una variabile che viene incrementata o decrementata per tenere traccia di un conteggio. Spesso, l'incremento della variabile è di 1 in 1.