I programmi non avrebbero alcuna utilità se non potessero acquisire informazioni dall'esterno (input di un dato) o fornire informazioni all'esterno (output di un dato).
I programmi non avrebbero alcuna utilità se non potessero acquisire informazioni dall'esterno (input di un dato) o fornire informazioni all'esterno (output di un dato). Nel linguaggio di progetto si sono definite queste operazioni come acquisisci il valore di una variabile e come comunica il valore di una variabile.
Nel linguaggio Pascal la più importante istruzione di input è:
Readln(nomevariabile)
Che acquisisce il valore digitato sulla tastiera e lo memorizza nella variabile il cui nome è scritto tra le parentesi. Ad esempio l'istruzione:
Readln(baseMaggiore);
Che ho introdotto nel programma "areaTrapezio" acquisisce il valore dalla tastiera e lo memorizza nella variabile di nome baseMaggiore.
A proposito dell'istruzione Readln va ancora notato che:
- Il valore scritto sulla tastiera, che è visualizzato sul monitor mentre viene scritto, è acquisito solamente dopo che si è premuto il tasto Invio;
- Una volta acquisito il dato il cursore si posiziona all'inizio della riga successiva;
- Se il dato digitato non è compatibile con il tipo della variabile viene generato un errore.
La principale istruzione di output del Pascal è:
Writeln(nomevariabile);
Il suo significato è "scrivi sul monitor il valore contenuto nella variabile il cui nome è posto tra le parentesi e sposta il cursore all'inizio della riga successiva".
Ad esempio, la sequenza di istruzioni,
Prezzo := 5000;
Writeln(prezzo);
Ha l'effetto di visualizzare sullo schermo il numero 5000.
Con la stessa istruzione possono essere scritti valori di più variabili, basta porre i nomi tra parentesi, separati da virgole. Mi fermo qua, penso di essere stato chiaro, alla prossima.
Un programma scritto in Pascal, o in un altro linguaggio di programmazione ad alto livello, non può essere immediatamente eseguito, ma deve essere prima tradotto nel linguaggio macchina, per rendere le instruzioni comprensibili ed eseguibili dal computer.
Un programma scritto in Pascal, o in un altro linguaggio di programmazione ad alto livello, non può essere immediatamente eseguito, ma deve essere prima tradotto nel linguaggio macchina, per rendere le instruzioni comprensibili ed eseguibili dal computer. Come ho gia detto in un mio tutorial, i programmi che svolgono questa traduzione sono detti compilatori. Un compilatore prima di eseguire la traduzione controlla che il programma sia scritto correttamente secondo la grammatica e la sintassi del Pascal.
Ad esempio verifica:
A - che il programma cominci con la parola Program;
B - che dopo ogni istruzione ci sia il simbolo ";";
C - che tutte le variabili usate siano state prima dichiarate;
D - che i nomi delle variabili siano scritti correttamente;
...e così via.
Il compilatore traduce il programma solamente se non ha rilevato errori di grammatica o di sintassi, altrimenti questi vengono segnalati e la compilazione ha termine.
Va ricordato che un programma corretto dal punto di vista grammaticale e sintattico può presentare errori di tipo diverso, che il compilatore non è in grade di trovare, come:
- errori in fase di esecuzione (ad esempio si calcola la radice quadrata di una variabile con valore negativo);
- errori concettuali nell'algoritmo, che producono risultati diversi da quelli attesi (se devi calcolare l'area del
rettangolo e scrivi l'istruzione area := base / altezza invece di area := base * altezza, commetti un errore
concettuale che non sarà rilevato dal compilatore).
E' necessario quindi controllare attentamente i programmini che scriviamo, eseguendoli con diversi dati di input per assicurarci che funzionino correttamente.