Partiamo da un flow-chart
Esercizio: si scriva un algoritmo, utilizzando prima un flow-chart e poi lo pseudolinguaggio, che calcoli l’area di un rettangolo.
Sappiamo bene che questo è uno dei flow-chart più semplici:

Scriviamolo adesso usando lo pseudolinguaggio:
INIZIO
leggi base, altezza
area <- base * altezza
scrivi area
FINE
Questi due programmi sono equivalenti, cioè arrivano alla stessa soluzione, con gli stessi dati inseriti. Quindi, ogni flow-chart è traducibile in pseudolinguaggio e viceversa!
Vi siete mai chiesti che cosa è la parte a destra su Algobuild? A sinistra si trova il flow-chart, a destra lo pseudolinguaggio (scritto in inglese, ma noi lo scriveremo in italiano)!
Elementi principali
Osservando l’algoritmo nel paragrafo superiore in pseudolinguaggio, si possono notare alcune funzioni che servono sicuramente negli algoritmi:
- La parola “INIZIO”. Corrisponde allo start o al begin di un flow-chart. Serve per indicare l’inizio dell’algoritmo.
- La parola “FINE”, che analogamente all’INIZIO, corrisponde all’end di un flow-chart. Serve per indicare la fine dell’algoritmo.
- La funzione “leggi”. Corrisponde all’input di un flow-chart. Serve per inserire nell’algoritmo i dati che seguono il nome della funzione. Nell’esempio, la funzione leggi legge dall’esterno (dall’utente) la base e l’altezza della figura, separate da una virgola.
- L’assegnazione di una variabile, indicata con una freccia ( <- ) che corrisponde all’uguale nei flow-chart, ma solo nel caso di assegnazione, e non nel caso di confronto (La differenza è spiegata più avanti). Nell’esempio, alla variabile area si assegna il prodotto tra la base e l’altezza.
- La funzione “scrivi”. Corrisponde all’output di un flow-chart. Serve per stampare il valore di una o più variabili.
INIZIO e FINE devono sempre essere inseriti all’inizio e alla fine dell’algoritmo, però possono essere inseriti anche nel mezzo del programma, ma questo lo vedrai più avanti.
Le funzioni leggi e scrivi
Come ho già spiegato sopra, la funzione leggi è l’input dell’algoritmo, che permette di inserire dati al suo interno (per modo di dire, dato che l’algoritmo è scritto, ma non è eseguibile).
Possiamo inserire variabile per variabile, oppure tutte insieme, come nell’esempio sotto.
COME LEGGERE UNA VARIABILE:
leggi base
COME LEGGERE PIU' VARIABILI:
leggi baseMaggiore
leggi baseMinore
leggi altezza
OPPURE
leggi baseMaggiore, baseMinore, altezza
Anche per la funzione scrivi, la scrittura nell’algoritmo è simile, ma con qualcosa di diverso, dato che puoi anche visualizzare frasi, ma è più veloce e semplice stampare solo la variabile interessata.
COME SCRIVERE (STAMPARE) UNA VARIABILE:
scrivi somma
COME SCRIVERE PIU' VARIABILI:
scrivi somma
scrivi prodotto
scrivi area
OPPURE
scrivi somma, prodotto, area
COME SCRIVERE UNA FRASE (STRINGA):
scrivi "Il numero è minore di 100"
COME SCRIVERE UNA VARIABILE, SEGUITA DA UNA STRINGA:
scrivi "L'area del rettangolo è uguale a ", area
(dove area è una variabile)
Differenza tra operatore di assegnazione e di comparazione
Come hai visto nell’esempio sul calcolo dell’area di un rettangolo, ho usato la freccia ( <- ) per assegnare alla variabile area il prodotto tra la base e l’altezza.
Questa è una convenzione del linguaggio di progetto, che per non creare confusione tra assegnazione e comparazione, cambia completamente il segno di assegnazione. Ecco spiegata la differenza in una piccola tabella:
| NEI FLOW-CHART | NELLO PSEUDOLINGUAGGIO | |
| ASSEGNAZIONE | = | <- |
| COMPARAZIONE | == | = |
Quindi per assegnare un valore ad una variabile nello pseudolinguaggio si usa <-, mentre per confrontare due variabili si usa =.
Concetto di indentazione
Scrivere algoritmi con lo pseudolinguaggio sembra molto semplice, finché sono relativamente corti.
Ma pensiamo ad un algoritmo molto lungo: se scritto tutto su una stessa “colonna”, risulta difficile da comprendere e molto disordinato.
Ecco perché nello pseudolinguaggio, ma anche in tutti i linguaggi di programmazione, esiste l’indentazione.
Per indentazione intendiamo il procedimento che ordina il programma o l’algoritmo, per renderlo più semplice e intuitivo da leggere.
Come noti nell’esempio all’inizio della pagina, che riporterò qui sotto, una volta iniziato a scrivere il programma, ho iniziato a lasciare degli spazi prima delle istruzioni da eseguire. Questo serve per far capire meglio che quei blocchi sono contenuti nello stesso “pezzo” di codice (che in questo caso è solo 1, dato che non abbiamo cicli o altre strutture più complesse, che vedrai più avanti).
Questo spazio si ottiene premendo il tasto “tab” (tabulazione) sulla tastiera, rappresentato di solito in alto a sinistra, con il simbolo ⇆.
INIZIO
<indento> leggi base, altezza
<indento> area <- base * altezza
<indento> scrivi area
FINE
(Al posto della parola <indento>, ci va il carattere di tabulazione)