Sunteți pe pagina 1din 12

TIPURI DE DATE:

ir de caractere
Clasa a X-a Profesor: Gurmeza Inga

TIPUL IR DE CARACTERE (STRING).

Tipul String a fost conceput pentru a prelucra iruri de caractere.

Pentru c o dat de tip Array Of Char nu permite operaii specifice irurilor de caractere (concatenare, citire, tiprire i altele), tipul string reuete astfel de operaii.

Acest tip se declar astfel : String [m] sau simplu String. - m - reprezint numrul maxim de caractere pe care poate s-l conin o variabil de acest tip. Dac nu se specific aceast limit m (varianta a doua), atunci lungimea maxim este 255 (valoarea implicit pentru m).

constantelor de tip String se realizeaz utiliznd caracterul apostrof () astfel : sir_caractere . Dac dorim ca irul de caractere descris s conin acest caracter, atunci caracterul apostrof va fi dublat.
Descrierea

Exemplu

: Str. Lalelelor, Nr.2 , Domnu Trandafir ( reprezint irul DomnuTrandafir ).

Operaia de concatenare a dou iruri este notat cu + .


De exemplu Algoritmica, + Programare are valoarea Algoritmica, Programare.

Operatorii relaionali permit compararea a dou iruri utiliznd ordinea lexicografic (utilizat n dicionare, cri de telefon, etc.) : = i <> pentru egalitatea respectiv neegalitatea a dou iruri, <, >, <=, >= pentru compararea lexicografic.
Exemple : Alb < Albastru;

Tipul

String are ( n plus fa de tipul Array Of Char ) implementate urmtoarele faciliti : valorile variabilelor i expresiilor de tip String pot fi citite respectiv tiprite,
Exemplu : Mesaj:=Numele autorului; Write (Dati +Mesaj+ : ); Readln (s);

a)

b)

se pot utiliza urmtoarele funcii i proceduri specifice tipului string:

FUNCII

- Length (S) - returneaz lungimea irului S, o valoare de tip ntreg.


Ex1. S:=calculator ; Length(s); {s=10} Ex2. S1:=Eu invat la liceu; For i:=1 to length(S1); {S1=?}

Copy (S,P,N) - conine trei parametri unde S este irul din care se face extragerea unui subir, P este poziia primului caracter a subirului extras, N numrul de caractere care se extrag.

Program Str; Var S,S1:String; Begin S:=informatica; S1:=Copy(S,3,6); Writeln(S1); End.

- Concat (S1,S2, S3, ,Sn) se folosete pentu a uni mai multe cuvinte ntr-o propoziie i este echivalent cu S:=S1+S2+S3+..+Sn; - Pos (S,S1) funcia are doi parametri S este subirul cutat i S1 irul n care se caut. Rezultatul acestei funcii este de tipul byte, dac retultatul este 0 -subirul cutat nu a fost gasit, n caz contrar- subirul a fost gasit i se indic numrul de nceput a subirului din cadrul irului.
Ex. Var S,S1:integer; Begin S1:=informatica; S:=for; i:=pos(S,S1); write(i); {i=3} End.

PROCEDURI

Delete (S,P,N) - terge din irului S ncepnd din poziia P, n- caractere.


Ex. S:=calculator; Delete(S,7,4); Write(S); {S=calcul}

Insert (S, S1, P) insereaz irul S n irul S1 la poziia P.


Ex. S1:=mama; S:=riti; Insert(S,S1,3); Write(S1); {S1=maritima}

- Str (x,S) se folosete pentru a converti (transforma) coninutul unei variabile de tip numeric ntr-o variabil de tip string. Variabila x poate fi un numr ntreg sau real.

Ex. v:=5/2; Str (v:5:2,S); va depune n S irul 2.50.

- Val (S,v,Cr) examineaz irul S. Dac acesta conine caractere ce reprezint un numr scris corect atunci se va depune n v valoarea acelui numr iar n Cr valoarea 0. Dac irul S conine caractere nepermise, atunci n v se depune valoarea 0 iar n variabila Cr (de tip ntreg) poziia primului caracter nepermis.
Val (1997,v,Cr); are ca efect : v=1234 i Cr=0 , iar Val (19d7,v,Cr); are ca efect : v=0 i Cr=3 ( pe poziia 3 se afl d).

ELABORATI UN PROGRAM CARE:


a) determin numrul de apariii ale caracterului a ntr-un ir; b) substituie caracterul a prin caracterul * c) radiaz din ir caracterul b d) determin numrul de apariii ale silabei ma ntr-un ir; e) substituie silabele ma prin silaba ta f) radiaz din ir silaba to

ALCTUII PROGRAME PENTRU


PROBLEMELE DE MAI JOS

1. Se d un text (un ir de caractere), s se afieze caracterele de pe poziii pare. 2. S se determine dac textul dat conine dou simboluri alturate identice s afiseze mesajul Succes in caz contrar Insucces. 3. irul S este compus din cteva propozitii, fiecare terminndu-se cu punct, semnul exclamrii sau semnul ntrebrii. Elaborai un program care afieaz pe ecran numrul de propoziii din irul studiat.