program cambio3;
(* legge stringa nei singoli caratteri e fornisce valore numerico *)
(* corrispondente ad ogni carattere della stringa *)
(* con Ord,Copy *)

uses crt;
var lettere,k,codice,cifra:integer;
    s:string;
    a:array[1..20] of integer;
    p:array[1..20] of string;

begin
clrscr;
repeat
writeln('scrivi stringa da analizzare:0 per finire=');readln(s);
writeln('lunghezza stringa');
lettere:=ord(s[0]);
writeln(lettere);
writeln('legge e stampa caratteri consecutivi ');
for  k:=1 to lettere do
begin
p[k]:=copy(s,k,1);
a[k]:=ord(s[k]);
end;
writeln('stampa lettere della stringa ');
for k:=1 to lettere do writeln(p[k]);
writeln('stampa valori numerici relativi ai singoli caratteri');
for k:=1 to lettere do writeln(a[k]);readln;
clrscr;
until s='0';
clrscr;
end.

scrivi stringa da analizzare:0 per finire=
ABCDEF
lunghezza stringa
6
legge e stampa caratteri consecutivi
stampa lettere della stringa
A
B
C
D
E
F
stampa valori numerici relativi ai singoli caratteri
65
66
67
68
69
70

cambio4