«Программалау» ПӘнінің ОҚУ-Әдістемелік кешені



бет12/16
Дата21.12.2019
өлшемі1,23 Mb.
#53890
1   ...   8   9   10   11   12   13   14   15   16
Байланысты:
cf272a53-91fd-11e3-8e6b-f6d299da70eeУММ Пр2-2 ШАКАРИМА


Зертханалық жұмыс №7.
Файлдар
1.Жұмыстың мақсаты:

С++ тілінде файлдармен танысу және олармен жұмыс істеу дағдысын қалыптастыру.


2. Есептің шарттары:

Квартира туралы мәлімететр адрестен, бөлмелер санынан, ауданынан және бағасынан тұрады. Бірнеше квартиралар туралы мәліметтерден тұратын массив берілген. Ақпаратты файлға жазу керек. Бағасы бойынша квартиларадың адрестерін және олардың санын анықтау керек.


3. Есептің шешуі:


  1. Есепті шешу алгоритмінің блок-схемасы:



input(a)


fin.open(“flat.txt”); i = 0



-
i < n


+


flat.txt

a[i].adres

a[i].kolvo

a[i].ploshad

a[i].stoimost







i ++



fin.close(a)


return




output(а)



fout.open(''new_flat.txt''); i=0



i


-

+
a[i].adres

a[i].kolvo

a[i].ploshad

a[i].stoimost





new_flat.txt




i++



fout.close (a)



return


sort(a)




i=0




i


-

+
j=1



j


-

+


strcmp(a[i].adres,

a[j].adres)>0





-

+


t=a[i]; a[i]=a[j]; a[j]=t




j++



i++




fin.close(a)



return



БАСЫ




input(b)




sort(b)




output(b)



Vvedite stoimost




stoim




k=0;i=0;



i


-

+


b[i].stoimost<=

stoim




-

+
b[i].adres



k++




i++




Hauqeno kvartir



k




СОҢЫ


2)С++ тіліндегі бағдарлама мәтіні:
#include

#include

#include

#include

#include

const n=5;

struct flat

{char adres[20];

long int kolvo;

long int stoimost;

long int ploshad;

};

void input(flat a[n])

{ifstream fin;

int i;

fin.open("flat.txt");

for(i=0;i

fin>>a[i].adres>>a[i].kolvo>>a[i].ploshad>>a[i].stoimost;

fin.close();

}

void sort (flat a[n])

{int i,j;

flat t;

for(i=0;i

for(j=i;j

if(strcmp(a[i].adres,a[j].adres)>0)

{t=a[i];

a[i]=a[j];

a[j]=t;

}

}

void output(flat a[n])

{ofstream fout;

fout.open("new_flat.txt");

int i;

for(i=0;i

fout<

fout.close();

}

void main()

{clrscr();

double stoim,k;

k=0;

flat b[n];

cout.setf(ios::left);

input(b);

sort(b);

output(b);

cout<<"BBeguTe stoimost\n";

cin>>stoim;

cout<<"\nAdress/------/Kolichestvo_komnat/----/Ploshad/----/Stoimost/\n\n";

int i;

for(i=0;i

if(b[i].stoimost<=stoim)

{cout.width(20);cout<

cout.width(20);cout<

cout.width(12);cout<

cout.width(15);cout<

k++;

}

cout<<"\nHaugeHo "<

getch();

}

3)Бағдарламаны тестілеу нәтижесі:
Сұрыптауға дейінгі мәтіндік файл:


Сұрыптаудан кейінгі мәтіндік файл:



Достарыңызбен бөлісу:
1   ...   8   9   10   11   12   13   14   15   16




©engime.org 2024
әкімшілігінің қараңыз

    Басты бет