function length(sKatea: StringDatuMota): integer; |
Helburua: karaktere-kate baten luzera logikoa lortu.
Emaitza: zenbaki bat, katearen luzera efektiboa; hau da, katearen 0 posizioari dagokion ordinala.
Nahiz eta bere barnean begiratzerik ez daukagun, suposatzekoa da Length funtzio estandarra honela garaturik dagoela:
function length(sKatea: string): integer;
begin
length := ord(sKatea[0]);
end;
LengthAdibidea adibiderako ikusi KateaErakustenDuenPrograma.pas programa eta ZeroPosizioa.pas programa. |
Hemen handiegia den kate bat irakurtzean gertatzen dena:
{
11111111112
12345678901234567890
KrokodiLO bErDe@ PoziK daGO
krOkOdIlO bErdE@ pOz
}
program MaiuskulakMinuskulak ;
type
DM_Kate20 = string[20] ;
function fnboBokalaDa(cLetra: char): boolean ;
begin
case cLetra of
'a', 'e', 'i', 'o', 'u': fnboBokalaDa := TRUE ;
'A', 'E', 'I', 'O', 'U': fnboBokalaDa := TRUE
else
fnboBokalaDa := FALSE;
end ;
end ;
var
sEsaldia : DM_Kate20 ;
k : integer ;
begin
writeln('//////////////////////////////////////') ;
writeln ;
writln('Esaldia eman: ') ;
readln(sEsaldia) ;
writeln('Irakurritakoa |||', sEsaldia, '|||') ;
for k:=1 to Length(sEsaldia) do
begin
if fnboBokalaDa(sEsaldia[k]) then
sEsaldia[k] := upcase(sEsaldia[k])
else
sEsaldia[k] := lowercase(sEsaldia[k]) ;
end ;
writeLn('Emaitza |||', sEsaldia, '|||') ;
writeln ;
writeln('//////////////////////////////////////') ;
readln ;
end.
iruzkinik ez:
Argitaratu iruzkina