Primi elementi e convenzioni

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)

Lascia un commento

Il tuo indirizzo email non sarà pubblicato. I campi obbligatori sono contrassegnati *

Questo sito utilizza Akismet per ridurre lo spam. Scopri come vengono elaborati i dati derivati dai commenti.