Documente Academic
Documente Profesional
Documente Cultură
Sarcina lucrarii
6. Scrieţi un program care la o singură trecere prin fişierul fin fără utilizare a
fişierelor suplimentare va tipări elementele fişierului fin în următoarea ordine:
– toate elementele mai mici ca valoarea a,
– elementele din segmentul [a,b],
– restul elementelor păstrînd aceeaşi ordine din fişierul fin. (a<b, a şi b sînt
cunoscute şi sînt de acelaşi tip ca şi elementele fişierului fin).
#include <iostream>
#include <string>
#include <fstream>
#include <cstdlib>
using namespace std;
class LUCRU_CU_FISIER
{ int n, a, b;
struct NODE { int inf; NODE *next; };
NODE *cap=NULL;
public:
void AddList(int n)
{
NODE *N=new NODE;
N->inf=n;
N->next=NULL;
NODE *T = cap;
if (T)
{
while ( T->next != NULL )
T = T->next;
T->next=N;
}
else
{
cap = N;
}
}
void ShowList_Restul() // functia de afisare a restul elementelor păstrînd aceeaşi ordine din
fişierul fin, (a<b)
{ NODE *T=cap;
if ( T==NULL)
cout<<"[Eroare] Elemente"<<endl; else {
while(T) {
if(T->inf>a && T->inf>b)
cout<<T->inf<<" ";
T=T->next; }
}
cout<<endl; }
int main()
{
LUCRU_CU_FISIER FIN;
char alegere;
while(true)
{
MENU();
cin>>alegere;
switch(alegere)
{
case '1': FIN.SETAB(); break;
case '2': FIN.IMPORT(); break;
case '3': FIN.ShowList_Mai_Mici_Ca_A(); break;
case '4': FIN.ShowList_Interval_A_B(); break;
case '5': FIN.ShowList_Restul(); break;
case '0': exit(0); break;
}
}
return 0;
}
Concluzie: În procesul de elaborare a programului am făcut cunoştinţă cu
noua structură de gestionare a datelor, anume clasa ce permite prelucrarea
datelor sub formă de obiecte, păstrînd integritatea lor şi excuzînd
posibilitatea de prelucrare greşită a datelor complexe identice (cu metode
identice). Elaborind programul am utilizat constructori, destructori si clase
prietene.