2023(e)ko martxoaren 10(a), ostirala

Length funtzioa






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