sir de caractere in turbo pascal
Post on 28-Nov-2014
302 Views
Preview:
DESCRIPTION
TRANSCRIPT
Șir de caractere
Limbajul de programare PASCAL
ȘIR DE CARACTERE
Este o secvență de caractere din codul ASCII precedată și urmată de caracterul apostrof.
Ex.:‘Finanțe’, ‘STOP’, ‘!’, ‘123’, ‘elementele șirului : ’
Tipul de date șir de caractere (STRING)
Type <nume_tip> = string;Var <nume_variabila> : <nume_tip>; <nume_variabila> : string; <nume_variabila> : string[k];unde k este o constantă, număr natural nenul ≤ 255
Ex.:Type nume=string;Var n : nume; p : string; s : string[12];
Modul de definire:
Atribuirea valorilor pentru variabile de tip STRING:Prin citirea de la tastaturăPrin atribuirea directă
Ex.:Var x : string; ...
Readln(x);Read(x);x:= ‘Algoritm’;...
Afișarea valorilor pentru variabile de tip STRING:Poate fi afișată în totalitate sau caracter cu caracter
Ex.:Var x : string[8]; ...
x:= ‘Algoritm’; Write(x); For i:=1 to 8 do write(x[i]); ...
{ Algoritm}
{ Algoritm}
Lungimea șirului de caractere:
Este dată de numărul de caractere din șir;Nu poate depăși 255 de caractere;Funcția length determină lungimea șirului de caractere indicat ca argument.
Ex.:Var x,y : string; a,b: integer; ... x:= ‘Algoritm’;
a:= length(x); y:= ‘elementele șirului’;
b:= length(y); ...
Compararea șirurilor:Se compară codul primului caracter al primului șir cu codul primului caracter al celui de-al doilea șir, în urma comparației se poate ajunge în una din următoarele situații: Primul cod este mai mare, caz în care se consideră
primul șir ma mare decît celălalt; Primul cod este mai mic, astfel că primul șir este mai
mic; Cele două coduri sunt egale;
Se trece la comparațiile de cod pentru al doilea caracter al primului șir cu al doilea caracter pentru șirul al doilea și în urma comparației se procedează ca pentru primul caracter;Etc.
Concatenarea șirurilor:Este o operație specifică șirurilor de caractere, prin care la un șir de caractere se pot lipi caracterele altui șir de caractereOperatorul folosit este +Funția Concat realizează concatenarea (alipirea), această funcție poate avea mai multe argumente
Ex.:Var x,y,a,b : string; ... x:= ‘Popescu’; y:= ‘Ion’;
b:= x+y; a:=concat(y, ‘ ’, x);...
{ b←PopescuIon }
{ a← Ion Popescu }
Extragerea unui subșir:
Funcția COPY extrage în s un subșir din șirul t dat începînd cu poziția p și avînd lungimea l
Copy(t,p,l)Ex.:Var t,s : string; ... t:= ‘Algoritm’; s:= copy(t,5,4); ...
{ s← ritm }
Poziția unui subșir:
Funcția POS returnează prima poziție a unui subșir s într-un șir t, în caz contrar returnează 0
Pos(s,t)Ex.:Var s,t : string; p : integer; ... t:= ‘Algoritm’; s:= ‘ritm’;
p:=pos(s,t);...
{ p← 5 }
Inserarea unui subșir:
Procedura INSERT inserează un subșir s în șirul t înaintea caracterului de pe poziția p
Insert(s,t,p)
Procedura INSERT inserează un subșir s în șirul t înaintea caracterului de pe poziția p
Insert(s,t,p)Ex.:Var x,s,t : string; ... t:= ‘bine’; s:= ‘ul’;
x:=insert(s,t,2); ...
{ x← buline }
Ștergerea unui subșir:
Procedura DELETE șterge un subșir de lungime l dintr-un șir s, începînd cu poziția p
Delete(s,p,l)Ex.:Var x,t : string; ... t:= ‘Informatica’; x:=delete(t,3,8); ...
{ x← Ina }
Transformarea numărulu în șirul de caractere:
Procedura STR transformă numărul n de tip integer în șirul de caractere corespunzător, pe care îl memorează în șirul s.
Str(n,s)
Ex.:Var s : string; n: integer ... n:= 314; str(n,s); ...
{ s←‘314’ }
Transformarea caracterului într-un număr: Procedura VAL încearcă să convertească șirul de caractere s în numărul corespunzător. Tentativa va reuși dacă șirul conține numai caractere permise pentru un număr, adică cifre, punctul zecimal și caracterul “-“, dacă transformarea reușește, atunci în parametrul n se memorează numărul rezultat prin transformare, iar parametrul cod va primi valoarea 0; dacă transformarea eșuează, atunci parametrul n va fi nedefinit, iar în parametrul cod se memorează poziția în șir a primului caracter din cauza căruia a eșuat transformarea.
Val (s,n,cod)Ex.:Var s : string; n, cod: integer ... s:= ‘314’ ; val(s,n,cod); s:= ‘3#14’ ; val(s,n,cod); ...
{n←314 , cod ←0}
{n←0, cod ←2}
Sursa:
A.Braicov, Turbo Pascal, culegere de probleme; Editura Prut Internațional , 2005R. Matei, D.Mateiaș, Tainele informaticii, manual de informatică, clasele V-VIII, Editura Paralela 45, 2006
top related