Sunteți pe pagina 1din 8

Ministerul Educaiei al Republicii Moldova

Universitatea Tehnic a Moldovei

Catedra:Automatica si Informatica

RAPORT

Lucrarea de laborator Nr.6

La Programarea Calculatoarelor

A efectuat: st. Gr.AI-161

Trofim Petru

A verificat:

dr., conf.univ.

Mihail Kulev

Chiinu 2016
Lucrare de laborator Nr.6
Tema: Prelucrarea datelor de tip String
[1] Scopul lucrarii: acumularea deprinderilor de algoritmizare si
programare a problemelor ce prelucreaza date de tip Sir de
caractere;introducerea si afisarea sirurilor de caractere,prelucrarea
lor,folosing functiile si procedurile de prelucrare a sirurilor de caractere.
Sarcina de lucru:De executat pe calculator programul de
prelucrare a datelor de tip Sir de caractere,in corespundere cu
varianta.De afisat Sirul de date initial introdus si cel prelucrat.
Varianta 11:De elaborat un program care interschimba fiecare litera
cu predecesoarea ei
Mersul lucrrii:
Un sir de caractere este o structur de date format dintr-o succesiune
de caractere care se termin cu caracterul NULL ( \0). Implementarea
sirurilor de caractere se face sub forma unui tablou unidimensional
(vector) ale crui elemente sunt de tip caracter, fiecare caracter fiind
reprezentat prin codul su ASCII. Sirul de caractere se deosebeste de
vectorii cu alte tipuri de elemente prin marcatorul logic utilizat la
sfrsitul sirului - NULL (care are codul ASCII 0).

Declararea ex: char x[5]; // am declarat sirul x care va putea contine


maxim 5 caractere .

Dimensiunea vectorului de caractere trebuie declarat cu un caracter


mai mult dect cel mai mare sir de caractere pe care l poate contine,
pentru a exista loc si pentru terminatorul sirului (caracterul \0).

O constant sir de caractere este o succesiune de caractere delimitat


de ghilimele. ex: char sir[256]=Buna ziua;

Datele care se reprezint sub form se iruri de caractere au o larg


aplicabilitate n programarea calculatoarelor, indiferent de limbajul
folosit. Astfel i n limbajul C se pot memora i prelucra informaii de tip
ir de caractere. In limbajul C, un ir de caractere este un tablou
unidimensional cu elemente de tip caracter i care se termin cu NULL.
Totui compilatorul C nu adaug automat terminatorul NULL, dect n
cazul folosirii fuciilor predefinite fgets() i gets(), iar n celelalte cazuri
este necesar ca programatorul s adauge terminatorul de ir atunci
cnd dorete acest lucru, pentru a lucra cu irurile de caractere.

Analiza datelor:

a) date de intrare:

*str variabile de tip char (adresa tabloului)

b) date intermediare:

i variabila simpla de tip integer care determine pozitia elementului


din tablou.

Notiuni principale din teorie i metode folosite:[2]


Analiza functiei SUBSTITUION:
a)parametrii de apel:

*a-adresa primului caracter a stringului.


l-variabila simpla de tip integer,reprezinta lungimea stringului.

b)Valoarea returnata:
Nu este returnata nici o valoarea.

Schema logica a algoritmului :


corect(str1)

return 0
Textul programului in limbajul C:[3]
///////// Prelucrarea Caracterilor si stringurilor//////////

///////// Codul elaborat de Trofim Petru///////////

#include<stdio.h>

#include<conio.h>

#include<String.h>

#include<stdlib.h>
void modstr(char* str);

int main()

char* str;

str= (char*)malloc(sizeof(*str));

printf("****************** Codul elaborat de Trofim Petru***********\n");

puts("Dati stringul:");

fflush(stdin);

gets(str);

puts("Stringul obtinut");

modstr(str);

puts(str);

void modstr(char* str)

int i;

for(i=0; i<strlen(str); i++)

if(str[i]=='a')

str[i]='z';

else if (str[i]=='A')

str[i]='Z';
}

else if (str[i]==' ')

str[i]=' ';

else {

str[i]=str[i]-1;

Analiza rezultatelor si concluzii:[3]


1. Verificarea ne arata ca rezultatele obtinute sunt corecte si programul lucreaza corect.
2. Au fost obtinute primele deprinderi pentru scrierea unui program de prelucrare a sirului
de caracter alocat dinamic..
3. Am aplicat cunostintele obtinute anterior pentru a elabora un program mult mai complex.

AVANTAJE:
1. Sirul de caractere este alocat dinamic,dupa numarul de caractere introduse de catre
utilizator.
2. Programul contine functii,ceea ce ne va permite sa modificam programul mai usor dupa
dorinta.
3. Lipseste depasirea limitelor a sirului de caractere.
DEZAVANTAJE:

1. Pot aparea exceptii in urma realocarii memoriei pentru sirul de caractere.


2. Funtia modifica sirul si nu creeaza o copie a stringului intial.

Bibliografie:

1. Culegerea de probleme pentru laborator.

2 The C Programming Language, Brian Kernighan and Dennis R ;

3. Conspectul prelegerilor cursului Programarea Calculatoarelor pentru studeni gr.,


AI-161. Lector: dr., conf. univ. M.Kulev. Chiinu, UTM,2016

S-ar putea să vă placă și