Алматинский университет энергетики и связи

Кафедра «Инженерной кибернетики»

Расчетно-графическая работа №2

по дисциплине «Технологии программирования»

Вариант 1

Выполнил:

ст. гр. АУ-12-7

Проверил:

доцент

Алматы 2013

План

1.  Введение

2.  Блок-схема программы

3.  Код программы

4.  Задание

5.  Заключение

6.  Список использованной литературы

Введение

Структура – это одна или несколько переменных одного или различных видов, которые для удобства работы сгруппированы в одну языковую конструкцию под одним именем. Структуры помогают в организации сложных данных, поскольку позволяют группу связанных между собой переменных трактовать не как множество отдельных элементов, а как единое целое.

Задание

Реализовать структуру. Ввести данные. Организовать ввод и вывод данных, используя файл. Используя поля структуры выполнить выборку или вычисления, если возможно.

Тема: Выставка собак

Порода, Пол, Кличка, Возраст, Владелец.

Код программы.

#include<fstream. h>

#include<iostream. h>

#include<conio. h>

#include<string. h>

#include<stdio. h>

struct sobaka

{char klichka[15];

char pol[15];

int kolvo;

int vozrast;

char vladelec[15];

}c[30];

struct zakaz

{char zakaschik [15];

int id;

int den;int mes;int kolvo;

int srok_jizni;

int summa;

}z[30];

void main()

НЕ нашли? Не то? Что вы ищете?

{clrscr();

ifstream read_file1("sobaka. txt");

ifstream read_file2("poisk sobak. txt");

int x=1,i, k;

for(i=0;i<30;i++)

{read_file1.read((char*)&c[i],sizeof(c[i]));read_file2.read((char*)&z[i],sizeof(z[i]));}

while(x!=0)

{clrscr();cout<<" PIDBYL "<<endl;

cout<<"1: sobaka"<<endl<<"2: poisk sobak"<<endl<<"3: spravka"<<endl<<"0: vihod"<<endl;

cin>>x;

switch(x)

{ case 1:

clrscr();cout<<"\tspisok sobak"<<endl;k=0;i=0;

cout<<"N\t"<<"klichka\t\t"<<"pol\t\t"<<"kol-vo\t"<<"vozrast\t"<<"vladelec\t"<<endl;

for(i=0;i<30;i++) if(c[i].kolvo>0)

{cout<<i+1<<'\t'<<c[i].klichka<<'\t'<<'\t'<<'\t'<<c[i].pol<<'\t'<<'\t'<<c[i].kolvo<<'\t'<<c[i].vozrast<<'\t'<<c[i].vladelec <<endl;k++;}

cout<<"1: dobavit sobaku"<<endl<<"2: izmenit zakaz"<<endl<<"3: vernutsya v menu"<<endl<<"0: vihod"<<endl;

cin>>x;

switch(x)

{

case 1:

cout<<"sobaka N"<<k+1<<endl;

cout<<"klichka: "; cin>>c[k].klichka;

cout<<endl<<"pol: "; cin>>c[k].pol;

cout<<endl<<"kolvo: "; cin>>c[k].kolvo;

cout<<endl<<"vozrast: "; cin>>c[k].vozrast;

strcpy(c[k].vladelec,"est");

break;

case 2:

cout<<"vvedite id sobaku"<<endl;

cin>>i;cout<<"comp N"<<i<<endl;

cout<<"proizvoditel: "; cin>>c[i-1].klichka;

cout<<endl<<"model: "; cin>>c[i-1].pol;

cout<<endl<<"kolvo: "; cin>>c[i-1].kolvo;

cout<<endl<<"cena: "; cin>>c[i-1].vozrast;

strcpy(c[i-1].vladelec,"est");

break;

}

break;

case 2:

clrscr();cout<<"\tzakazy"<<endl;k=0;

cout<<"N\t"<<"client\t\t"<<"ID sobak\t"<<"data\t"<<"kol-vo\t"<<"srok\t"<<"summa"<<endl;

for(i=0;i<30;i++)

if(z[i].srok_jizni!=0)

{k++;cout<<i+1<<'\t'<<z[i].zakaschik<<"\t\t"<<z[i].id<<'\t'<<'\t'<<z[i].den<<'.'<<z[i].mes<<'\t'<<z[i].kolvo<<'\t'<<z[i].srok_jizni<<'\t'<<z[i].summa<<endl;}

cout<<"1: oformit zakaz"<<endl<<"2: vernutsya v menu"<<endl<<"0: vihod"<<endl;cin>>x;

switch(x)

{

case 1:

cout<<"Zakaz N"<<k+1<<endl;

cout<<"client: "; cin>>z[k].zakaschik;

cout<<endl<<"id: "; cin>>z[k].id;

cout<<endl<<"data";

cout<<endl<<"den: "; cin>>z[k].den;

cout<<endl<<"mesyac: "; cin>>z[k].mes;

cout<<endl<<"kolvo: "; cin>>z[k].kolvo;

cout<<endl<<"srok: "; cin>>z[k].srok_jizni;

z[k].summa=(z[k].srok_jizni*c[z[k].id-1].vozrast);

strcpy(c[z[k].id-1].vladelec,"net");

break;

}

break;

case 3: cout<<"spravka"<<endl<<"1: vernutsya v menu"<<endl<<"0: vihod"<<endl;cin>>x;

break;

case 0: cout<<"poka";

break;

default: cout<<"error";

break;

}

}

ofstream write_file1("sobaka. txt");

ofstream write_file2("zakazy. txt");

for(i=0;i<100;i++)

{write_file1.write((char*)&c[i],sizeof(c[i]));write_file2.write((char*)&z[i],sizeof(z[i]));}

read_file1.close();

write_file1.close();

read_file2.close();

write_file2.close();

}

Заключение

Проделав данную расчётно-графическую работу, создал небольшую базу данных. Организовал ввод/вывод используя файл.

Список лютературы.

1.  Культин-Самоучитель по С++ Builder. СПб.:БХВ-Петербург,2004

2.  В Основы программирования на С и С++.-М:Горячая линия – Телеком,2002.

А, Алгоритмизация и языки программирования