You are on page 1of 7

Ministerul Educaiei i Tineretului al Republicii

Moldova
Universitatea Tehnic a Moldovei
Facultatea de Radioelectronic i Telecomunicaii

Dare de seam
La disciplina: Programare
Lucrare de laborator nr.7
Tema: iruri de caractere

A elaborat
Studentul gr.SER-101

Cernogal Laurentiu

A verificat:

Pocotilenco V.

Chiinu2011

2.Condiia problemei:
1)Este dat un sir de caractere. De aflat de cite ori este intilnit in sir fiecare din caractere.
2)Este dat un sir normal. De inversta cuvintele de pe pozitii impare.
3.Schema logic a algoritmului(programul 1):

Mod Coala
.
Elaborat
Verificat

docum.

Semnat Data

CPAE 525.1 005 07


Lit.

Cernogal L.
Pocotilenco V.

Coala
2

iruri de caractere

Coli
7

UTM FRT SER-101

Schema logic a algoritmului(programul 2):

Mod Coal
a

document

Semnat Data

CPAE 525.1 005 07

Coal
a

4.Textul programului 1:
#include<conio.h>
#include<stdio.h>
#include<iostream.h>
#include<string.h>
void main()
{ char sir[256];int i,j,t,k=0,d;
clrscr();
cout<<"Introduceti sirul de caractere:\n";
gets(sir);
for(i=0;i<strlen(sir);i++)
{d=0;
for(j=0;j<=i;j++)
if(sir[i]==sir[j])
d++;
if(d==1)
{k=0;
for(t=i;t<strlen(sir);t++)
if(sir[i]==sir[t])
k++;
printf("%c=%d, ",sir[i],k);
}}
getch();

Mod Coal
a

document

Semnat Data

CPAE 525.1 005 07

Coal
a

Textul programului 2:
#include<stdio.h>
#include<conio.h>
#include<iostream.h>
#include<string.h>
void main()
{char sir[256],cuv[256][50],*p,separator[]=" ,.?!"; int i,n=0;
clrscr();
cout<<"Introduceti sirul de caractere:\n";
gets(sir);
cout<<"Sirul dupa modificare:\n";
strcpy(p,sir);
p=strtok(p,separator);
while(p)
{strcpy(cuv[n++],p);
p=strtok(NULL,separator);}
for(i=0;i<n;i++)
if(i%2==0)
strrev(cuv[i]);
for(i=0;i<n;i++)
printf("%s ",cuv[i]);
getch();

Mod Coal
a

document

Semnat Data

CPAE 525.1 005 07

Coal
a

} strcpy(aux,cuv[l]);
strcpy(cuv[l],cuv[s]);
strcpy(cuv[s],aux);
clrscr();
cout<<"Sirul initial:\n"<<sir;
cout<<"\nSirul dupa schimbare\n";
for(i=1;i<=nr;i++)
printf("%s ",cuv[i]);
getch();
}

5.Descrierea programelor:
Primele 5 rnduri nu snt instruciuni ale limbajului C. Simbolul # indic c aceste snt
directive ale procesorului. Procesorul execut prealabil prelucrarea textului programului
nainte de compilare. Procesorul execut prelucrarea prealabil a textului programului
nainte de compilare. n cazul dat aceste directive ne dau de neles c n fiierul ce se
compileaz trebuie introdus informaia din fiierele sistemului Turbo C conio.h, stdio.h,
iostream.h, #include<ctype.h>, #include<string.h> si #include<stdlib.h>. Existena
acestor directive este condiionat de faptul c n textul programului snt folosite funciile
incorporate, informaia despre care se conine n fiierele indicate. Rndul void main()
definete titlul funciei principale cu numele main(). Pina la functia principala are loc
declararea si descrierea corpurilor functiilor secundare. Perechea de accolade {}
mrginete o secven de instruciuni care se precaut ca un tot ntreg. Urmtorul rnd
conine descrierea vareabilelor folosite n funcia principal main(). In urmatoarele rinduri se
prelucreaza siruri de caractere si se afiseaza rezultatele. Functia getch() opreste executarea
programului pina la apasarea tastei necesare din meniu. In primul program
operatorul ,,toupper efectueaza transformarea caracterului mic in mare, insa numai in
cadrul operatorului if. In al doilea program operatorii strlen, strcpy si strtok efectueaza
calcularea lungimii sirului de caractere, atribuirea sirului sursa la sirul destinatie si

Mod Coal
a

document

Semnat Data

CPAE 525.1 005 07

Coal
a

respective impartirea sirului in subsiruri divizate de separator. Operatorii if, for si while se
utilizeaza la introducerea datelor, calcularea cit si afisarea lor.

6. Rezultatele:
1)

2)

7.Concluzii:
Elaborind aceasta lucrare de laborator m-am familiarizat cu metodele teoretice si practice de
programare a sirurilor de caractere. Am observat ca trebuie rezervate lungimea sirului+1
caractere char (+1 pentru caracterul nul). Un sir de caractere se memoreaza ca un masiv
unidimensional de caractere.

Mod Coal
a

document

Semnat Data

CPAE 525.1 005 07

Coal
a

You might also like