Pascal/Input e Output: differenze tra le versioni
Contenuto cancellato Contenuto aggiunto
m Robot: Changing template: Programmare in Pascal |
m sintassi colorata |
||
Riga 6:
Un semplice esempio basato sull'uso delle variabili e dell'input-output potrebbe essere un modo per personalizzare un programma, salvando in una stringa il nome dell'utente per inserirlo nelle domande.
<source lang=pascal>
end.
</source>
Analizziamo come al solito il listato riga per riga:
* dichiarazione del nome
* dichiarazione della variabile ''name'' di tipo Stringa di dimensione 50
Riga 30:
* stampa del messaggio di benvenuto
* altra funzione dipendente dalla libreria ''crt'' che permette di leggere un solo carattere qualunque da tastiera. Vedremo che questa funzione è molto utilizzata per risolvere un problema riguardo all'esecuzione dei programmi compilati finora.
== Read e Readln ==
Il contenuto delle parentesi che seguono l'istruzione ''read'' o ''readln'' può essere una o più variabili. Nel secondo caso, in fase di esecuzione, i diversi valori di input vanno inseriti separandoli con uno spazio.
== Write e Writeln ==
Il contenuto della parentesi che seguono l'istruzione ''writeln'' può essere sia un'espressione (stringa o numerica), sia una variabile sia una combinazione.<br/>
La parte testuale è compresa tra due apici; per separare il testo dalle variabili si usa una virgola, come nell'esempio precedente.
Alcuni compilatori, soprattutto i più vecchi, possono inoltre dare problemi nella stampa dei caratteri accentati: in questi casi l'accento può essere sostituito con un apostrofo che, per il problema relativo agli apici nelle stringhe, si deve indicare con due apici. Un'istruzione come
<source lang=pascal>
</source>
è preferibile sostituirla quindi con
<source lang=pascal>
writeln(
</source>
(che stampa ''Il valore e''').
=== Formattare i numeri ===
Line 46 ⟶ 50:
nome_della_variabile : numero_di_cifre [: numero_di_cifre_decimali];
Ad esempio:
<source lang=pascal>
writeln(n:8:6);▼
</source>
Ovvero, nel primo caso il contenuto della variabile ''n'' verrà rappresentato con 8 cifre di cui 6 decimali; nel secondo caso verranno stampati 2 spazi vuoti e poi il numero 12.
<br/>Una istruzione come questa
<source lang=pascal>
▲ writeln(n);
</source>
stamperebbe invece il valore di ''n'' in notazione esponenziale (ad esempio 3.4E4 anziché 34.000).
Riguardo input e output, si può anche fare un esempio con i numeri di con un programma che calcoli il quadrato di un numero reale:
<source lang=pascal>
</source>
*il programma stampa la stringa 'Inserisci un numero reale';
*con ''readln(n)'' assegna alla variabile n un valore immesso da tastiera;
|