...rite Introduceti un caracter readlncFor k1 to 25 doritecritelnEnd.Tipul char e un tip ordinal.Aceasta inseamna ca valorile lui sunt ordonate.Exemplu019ABZDeoarece valorile de tip char sunt ordonate,pentru a afla predecesorul sau succesorul unui caracter pot fi apelate functiile standard pred si succ.De exemplu,apeland pred j avem i ,iar succ j avem k .Functia ord ,apelata cu parametru de tip char,furnizeaza ca rezultat numarul de ordine al caracterului.La Turbo Pascal acest numar,cuprins intre 0 si 255,coincide cu codul ASCII al caracterului respectiv.Pentru a afla codul unui caracter poate fi utilizat urmatorul programProgram CodulunuiCaracter Var caractercharBeginrite Introduceti un caracter readlncaracterriteln caracterul ,caracter, arecodul ,ordcaracterReadlnEnd.Functia ord poate fi utilizata si pentru a determina pozitia unei litere din alfabetul latin,astfelOrdlitera-ord A 1 sau Ordlitera-ord a 1Variabilele de acest tip pot fi utilizate ca variabilele de control ale ciclurilor cu contorfor.De exemplu,programul de mai jos afiseaza codurile ASCII ale cifrelor,utilizind in acest scop un ciclu For cu variabila de control de tip charProgram CoduriCifreVar ccharBeginrite Codurile ASCII ale cifrelor sunt For c 0 to 9 dorite ,ordcritelnEnd.Una dintre utilizarile clasice ale caracterelor este cea de codificare a optiunilor.Cazul cel mai simplu este cel al intrebarilor la care se raspunde cu Da sau Nu , prin apasarea tastei D sau N.Program exempluVar RaspunscharBeginriteacum plouaiDaNus readlnRaspunsIf Raspuns d or Raspuns DthenritelnCe bine ca nu ne trebuie umbrela End. Tipul stringPentru a facilita prelucrarea sirurilor de caractere,numeroase implimentari Pascal pentru definirea unor tipuri de date specifice-tipuri string.Exemple Un sir toamna se numara bobocii Alt sir . In Turbo Pascal ,pentru a putea lucra cu sirurile de caractere se folosesc variabile de tip string.Acest tip este predefinit,adica este cunoscut,nu avem nevoie sa-l declaram cu TYPE.Program st1Var tstringBegin t Iepuras ritelntend.Pentru ca sa aflam modul in care o variabila de tip string memoreaza un sir de caractere scriem urmatorul exemplu dat in programul de mai sus7Iepuras Ti0s ti1s ti2s ti3s ti4s ti5s ti6s ti7s ti255sPrin exemplu de mai sus observam ca pentru o varia bila de tip string se rezerva automat un vector cu 256 octeti.In exemplul dat sirul Iepuras este alcatuit din 7 caractere.Octetii de la 1 la 7 memoreaza caracterele din care este alcatuit sirul.Restul octetilor,de la 8 la 255 au un continut neprecizat.Intrucat o variabila de tip STRING memoreaza cuvintele sub forma de vector de caractere,exista posibilitatea sa accesam direct continutul unui octet,asa cum suntem obisnuiti.Astfel,ti1sretine codul caracterului I ,ti2s retine codul caracterului e ,s.a.m.d.,ca in programul de mai josProgram st2Var tstringIintegerBeginT Iepuras For I 1 to n do ritetiisEnd.In cazul variabilelor de tip string exista posibilitatea ca atribuirea sa se faca direct,nu pe litere,asa cum rezulta din programul st4.Program st4Var t,zstringBegint Iepuras ztritezend.In urma atribuirii,variabila z retine cuvantul Iepuras si acesta este afisat.Noi stim ca primul octet retine lungimea vectorului,dar in multe cazuri acest numar este prea mare se cunsuma memorie inutil.Din acest motiv exista posibilitatea ca o variabila de tip string sa fie declarata in asa fel incat sa ocupe un numar mai mic de octeti.Exemplu var tstringi4sVariabila t, ocupa 5 octeti.In acest caz variabila poate retine cuvinte ce au cel mult 4 caractere.Programul st5 afiseaza mama ....
Download