domenica 4 dicembre 2011

Quinta Lezione

In questa quinta lezione analizzeremo alcune caratteristiche delle variabili che introdurrò oggi, ovvero:

  • real
  • char
  • string
Real.
Partiamo dal primo, il valore real. Questo valore è molto più vasto del valore integer, in quanto è un contenitore che può assumere tutti i valori numerici reali. Un esempio di utilizzo di questo genere di variabile è questo, un programma che fa la media di due numeri (sapendo che la media di due numeri è la divisione per due della loro somma).


Program med_num;
Var
a,b : integer;
med : real;
Begin
Write ('Scrivi il primo numero: ');
Readln (a);
Write ('Scrivi il secondo numero: ');
Readln (b);
med := (a+b)/2;
Writeln ('La media dei numeri corrisponde a ',med,'');
Readln;
End.


Abbiamo impostato la media come valore reale, otterremo quindi questo risultato:

Il numero della media, anche se per noi non comprensibile istantaneamente, è un numero matematicamente corretto. Per avere un risultato numerico più vicino alla matematica di un semplice calcolatore, bisogna scrivere nell'ultima Writeln in questo modo:


Writeln ('La media dei numeri corrisponde a ',med:0:2,''); 


Scrivendo :0:2 dopo la variabile "med", si specifica che voglio avere in output un risultato che abbia solo un numero prima della virgola ("0") e due numeri dopo la virgola ("2"):

Se avessi voluto avere 4 numeri dopo la virgola, avrei scritto così "med:0:4".
E questa era la condizione di variabile con real, passiamo alla condizione char.

Char.
Come già spiegato in precedenza assume il valore di una lettera, ecco ad esempio un programma che memorizza e manda in output una lettera:



Program lettera;
Var
x : char;
Begin
Write ('Scrivi una lettera: ');
Readln (x);
Readln;
Write ('La lettera inserita corrisponde ad "',x,'"');
Readln;
End.


Perfetto, in basso riporto un esempio di funzionamento del programma:

Come si vede, il programma memorizza la lettera "A" nella variabile "x" e così in output, otterrò come risultato la lettera che ho scritto. Ma cosa succede se invece di "A", scrivessi una parola, come "America"?:

Il programma mi restituisce solo la prima lettera digitata, "A" in quanto char è un contenitore di una sola lettera. Come fare?
Per ovviare a questo problema mi serve un'altra variabile.

String.
String è un contenitore di "parole", fa proprio al caso nostro per l'esercizio di prima. Basta sostanzialmente correggere la variabile da char in string e il gioco è fatto:


Program parola;
Var
x : string;
Begin
Write ('Scrivi una parola: ');
Readln (x);
Readln;
Write ('La parola inserita corrisponde ad "',x,'"');
Readln;
End.


Constatiamo il funzionamento del software con questi esempi:
Esempio 1.

Esempio 2.

Bene, ora conosciamo altre 3 variabili, nel prossimo capitolo seguiranno diverse applicazioni di queste ultime. Vi invito a fare delle domande per eventuali incomprensioni e spero di essere stato chiaro fino ad ora.

Fine della Quinta lezione.

Nessun commento:

Posta un commento

Per inserire un commento devi essere registrato. I commenti sono messi a disposizione degli utenti per realizzare domande sull'argomento. Una volta inoltrato il commento l'amministratore provvederà a rispondere il prima possibile.