Sunteți pe pagina 1din 6

Ministеrul Еducаțiеi, Culturii și Cеrcеtării аl Rеpublicii Mоldоvа

Univеrsitаtеа Tеhnică а Mоldоvеi


Fаcultаtеа Cаlculаtоаrе, Infоrmаtică şi Micrоеlеctrоnică
Dеpаrtаmеntul Ingineria Software și Automatică

RAPORT

Lucrarea de laborator Nr.3


la disciplina Structuri de date și algoritmi

VARIANTA 9

A efectuat: st.gr.TI-192
Ciobanu Ecaterina
A verificat: asist.univ.
Cristina Josan

CHIŞINĂU – 2020
Tema: Prelucrarea fișierelor în C/C++

Scopul lucrării: Acumularea deprinderilor practice de creare și afișare a fișierelor, adăugarea în


fișier.

Obiectivele lucrării: Aprecierea personală a nivelului de cunoaştere a următoarelor compartimente:


- să se organizeze principiile organizării și gestiunii fișierelor în sistemele de operare și procesarea
fișierelor în limbajul C, apoi să se analizeze algoritmii și programele. Pentru aprofundarea și
rularea programelor în limbajul C să se eleboreze scenariile succinte de soluționare cu calcule de
verificare și explicațiiș
- de studiat și însușit materialul teoretic prin lansarea exercițiilor de antrenament și verificări ale
cunoștințelor și să se elaboreze și să se elaboreze algoritm și totodată să se organizeze calcule de
verificare cu explicații pentru evidențierea esențialului prelucrării fișierelor cu structuri de date în
elaborarea modelelor soluției. Toate observațiile se înregistează în raportș
- să se preia varianta și să se elaboreze algoritmii și programul unde să organizeze antetul funcțiilor
și transmitetrea funcției apelate adresele variabilelor cu calcule de verificare și cu explicațiile la
prelucrarea fișierelor.

PARTEA TEORETICĂ

Un fişier este o colecţie de date indicat printr-un nume şi o extensie. Numele este desparţit de
extensie prin punct.

Avantajul lucrului cu fisiere este evident, datele rezultate în urma execuţiei unui program putând fi
salvate.
În esenţă, există doua tipuri de fisiere: fisiere text si fisiere binare. Un fişier text conţine text (cifre
si caractere) iar un fisier binar poate conţine si imagini, baze de date, etc.

Vom studia lucru cu fisere text.

Pentru lucrul cu fişiere text in C++ se adaugă o bibliotecă standard si anume <fstream.h>. Această
bibliotecă lucrează cu fluxuri (stream-uri) :
ifstream – flux de intrare
ofstream – flux de iesire
fstream – are ambele caracteristici (ifstream si ofstream)
Opreaţiile care se efectuează, în general, cu fisiere text sunt:
-         deschidrea unui fisier text
-         închiderea unui fisier text
-         citirea datelor dintr-un fisier text
-         scrierea datelor intr-un fisier text
-         adăugarea datelor într-un fişier text

PARTEA PRACTICĂ

Sarcina lucrării: Un fișier conține 7 linii, pe fiecare linie fiind scrisă o zi din săptămână urmată după un
spațiu suma cheltuită în ziua respectivă. Scrieți un program care citește acest fișier și afișează datele la
ecran, calculează suma totală cheltuită, ziua cu suma maximă și suma medie.
Schema logică a programului:
Listing-ul programului în C++:
#include <iostream>
#include <fstream>
#include <string.h>
#include<bits/stdc++.h>
using namespace std;

int main()
{ int aux;
string text;
int n,i,tmp=0;
ifstream MyReadFile("date.txt");
int suma=0,sumamed=0,max1=-99999999999;
string stringmax;

while (getline (MyReadFile, text)) {


n=text.size();
cout<<text<<endl;

string name;
int pret;
stringstream ss;
ss.str(text);
ss >> name >> pret;
if(pret>max1)
{
max1=pret;
stringmax=name;
}
if(pret!=0){tmp++;
suma+=pret;}

cout<<endl<<"Suma totala cheltuita: "<<suma<<endl;


sumamed = suma/tmp;
cout<<"Suma medie: "<<sumamed<<endl;
cout<<"Cea mai mare suma "<<max1<<" a fost cheltuita in ziua de "<<stringmax<<endl;

MyReadFile.close();
return 0;
}

Analiza programului:
Liniile 1-4 reprezintă o directivă de preprocesare pentru a include funcțiile standard ale limbajului cout și
cin, inclusiv și funcțiile de prelucrare a fișierelor, cum ar fi stringsream, ifstream;
Linia 14:funcția ifstream care se folosește la deschiderea fișierului pentru citire;
Linia 16: funcția getline atribuie fiecare linie din fișier unei variabile;
Linia 22: variabile ss este folosită pentru a permite citirea cuvintelor delimitate (cuvânt cu cuvânt);
Linia 23: prin funcția stringstream se stochează într-un vector cuvintele, iar funcția str dă acces la cuvintele
din vectorul creat;
Linia 24: primul cuvânt se atribuie variabilei name, numele zilei, iar al doilea cuvânt se atribuie variabilei
pret, care reprezintă suma cheltuită în ziua respectivă
Linia 40: funcția close închide fișierul.
Rezultatele obținute:

CONCLUZIE
Lucrarea de laborator nr.3 este o inițiativă de a acumula deprinderi de creare și prelucrare a fișierelor,
de a adăuga și citi informații din fișiere. În urma efectuării lucrării de laborator am fost familiarizați cu
funcțile principale de prelucrare a fișierelor în limbajul de programare C++, cum ar fi ifsream, close,
stringstream, care facilitează lucrul cu fișierele.

BIBLIOGRAFIE

1. Crearea schemelor logice cu softul ”ClickCharts”


https://www.nchsoftware.com/chart/index.html
2. L.Negrescu. Limbajele C şi C++ pentru începători, Vol. 1 şi 2. Ed. Microinformatica,Cluj_Napoca,
1994 (reeditare 2000).
3. Indicațiile metodice

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