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

STRING datu-mota















DEFINIZIOA


STRING datu-motako aldagaiari karaktere-kate esaten diogu, edo laburrako kate besterik gabe.



String datu-motako aldagaiaren definizioa: elkarrekin batera prozesatzen den karaktereen segida.



String datu-motako aldagaiak, hitzak edo esaldiak gordetzeko balio du, string bat zenbait karakterez osaturiko katea izango da. Horregatik, String aldagaia definitzean memorian zenbat karaktere biltegitu nahi den zehaztu beharra dago.



String batek aurredefiniturik dauzka bere indizeak. Katearen lehen karaktereari 1 indizea dagokio, bigarrenari 2 eta hurrenez-hurren horrela jarraituz katearen karaktere guztiak atzeman daitezke.



Karaktere-kateak 0 posizio bat dauka bere barnean integraturik eta, ondoko irudian erakusten den bezala, 0 posizio horrek helburu berezia betetzen du.

ESKEMA







String bakoitzaren datuen arabera zero posizioak zer gordetzen du?








DATU-MOTAK DISEINATZEN ETA ALDAGAIAK SORTZEN






type
tKateLuze = string[100] ;
tKateMotz = string[10] ;
tKate25 = string[25] ;
var
sHelbidea : tKateLuze ;
sIzen1 : tKateMotz ;
sIzen2 : tKateMotz ;
sIzen3 : tKateMotz ;
sHerria : tKate25 ;
sKaterikLuzeena : string ; { 255 karaktere biltegitzeko aldagaia }
begin
writeln(sizeof(string)) ; { 256 = 255 karaktere + zero posizioa }
writeln(sizeof(tKateLuze)) ; { 101 = 100 karaktere + zero posizioa }
writeln(sizeof(sHelbidea)) ; { 101 = 100 karaktere + zero posizioa }
writeln(sizeof(tKateMotz)) ; { 11 = 10 karaktere + zero posizioa }
writeln(sizeof(sIzen1)) ; { 11 = 10 karaktere + zero posizioa }
writeln(sizeof(tKate25)) ; { 26 = 25 karaktere + zero posizioa }
writeln(sizeof(sHerria)) ; { 26 = 25 karaktere + zero posizioa }
...



ERAGIKETAK: IDATZI-IRAKURRI, ESLEIPENA ETA KATEAKETA



Kate bat bere osotasunean irakur eta idatz daiteke, horregatik ondoko aginduak zuzenak dira:



writeln(sHelbidea) ;

readln(sIzen1) ;

Kate batean beste kate baten edukia jarri daiteke esleipenaren bitartez:



sHelbidea := sIzen1 ;


Kate batean beste kate batzuen edukia gorde daiteke + eragilea erabiliz:



sHelbidea := '-----' + sIzen1 + '-----' + sHerria ;




ERAGIKETAK: KONPARAKETAK



Kateen arteko alderaketak edo konparaketak. Bi kateen artean alderaketa egiteko, kateen karaktereak banan-banan arakatu behar dira. Alderaketak honelaxe egin  daitezke:



Bi kasu:


Batetik = eragilea:


Deiturak := 'Beloki' ;     
if Deiturak = 'Beloki' then




if Deiturak='Beloki' then   sententziak

TRUE balio dezan kate biren karaktere

guztiek binaka kointziditu beharko lukete




Bestetik, gainerako (>, <, >=, <=, <>) bost eragileak:


Deiturak := 'Uonegan' ;     
if Deiturak < 'uonegan' then




Beste bost eragileak (> < >= <= <>) aplikatzean,

konpiladoreak karaktereak binaka tratatzen ditu

ere, baina IF-THEN aginduaren emaitza jakin

bezain laster alderaketa gehiagorik ez du egiten



Honekin jarraituz, gerta daiteke bi kateek hasierako

karaktere guztiakak berberak edukitzea baina, bata

bestea baino luzeagoa izatea. Adibidez, 'Uoneg'

eta 'Uonegan' kate biak desberdinak dira eta



goiko konparaketaren emaitza TRUE da: karaktere
bikoteak berdinak direnean, kate
laburra kate luzea
baino txikiagoa dela kontsideratzen delako

LAN EGITEKO BALIABIDEAK



Kateekin lan egiteko aurredefinituriko funtzio eta prozedurak erabili behar dira.



Hona hemen funtzioen zerrenda:



Zerrenda honetako azken funtzioaren ordez + eragilea erabil daiteke kateaketak burutzeko.



Hona hemen prozeduren zerrenda:






PARAMETRO IZATEAN JOKAMOLDEA



Kate bat ez dugu kontsideratuko datu-mota egituratua, datu-mota soila baizik. Horregatik, azpiprograma batean honela agertuko da jokamoldearen arabera:


  • Irteerakoa denean VAR marka izango du aurrean

  • Sarrerakoa denean ez du inolako markarik izango


ADIBIDEAK




Hona hemen karaktere-kateen zenbait programa:   


















INTEGER REAL BOOLEAN CHAR STRING ARRAY RECORD FILE







 

iruzkinik ez:

Argitaratu iruzkina