function Upper(st:string):string;
var
buf:string;
ln: integer; { длина исходной строки }
c:string[1]; { обрабатываемый символ }
i:integer;
begin
buf:='';
ln:=length(st);
for i:=1 to ln do
begin
c:=copy(st,i,1); { выделить символ строки }
case c[1] of
'а'..'п',
'a'..'z' :buf:=buf+chr(ord(c[1])-32);
'р'..'я' :buf:=buf+chr(ord(c[1])-80);
else buf:=buf+c;
end;
end;
Upper:=buf;
end;