Разработка базы данных по легковым автомобилям

Автор работы: Пользователь скрыл имя, 24 Января 2014 в 10:02, курсовая работа

Краткое описание

Цель работы: Разработать программу на С++ для обработки данных по легковым автомобилям с использованием стандартного типа данных «структура». Обработка должна включить следующие функции: создание новой базы данных (с возможностью задания имени файла); просмотр существующей базы данных (чтение данных осуществить из файла);
редактирование базы данных (с сохранением изменений в файле ); дополнение базы данных новыми записями (с сохранением в файле); удаление записей из базы данных (с сохранением в файле); поиск в базе данных (по одному или двум поисковым признакам ) с выводом на экран найденных записей или сообщения о неуспешном поиске; сортировка данных по заданному полю ( с сохранением в файле).

Содержание

Введение 3
1 Описание глобальных переменных 4
2 Блок-схемы 5
3 Тестирование программы 19
Заключение 43
Список используемой литературы……………………………………..44

Вложенные файлы: 1 файл

Мой Курсовик по программированию (С++).doc

— 3.13 Мб (Скачать файл)

getch();

}

return;

default:cout<<"Net tacogo puncta.";

getch();break;

}

}

}

void avtos::alfsort()

{

int fl,i,l;

avto t;

l=n-1;

do

{

fl=0;

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

if(strcmp(a[i].model ,a[i+1].model)>0)

{

t=a[i];

a[i]=a[i+1];

a[i+1]=t;

fl=1;

}

l--;

}

while(fl==1);

return;

getch();

}

void avtos::input_file()

{

ifstream fin;

char file[L];

cout<<"Ukazite put k failu: ";

cin>>file;

fin.open(file);

if(fin==NULL)

{

cout<<"File ne otkrit";

getch();

exit(1);

}

n=0;

fin>>a[n].model>>a[n].cvet>>a[n].stoimost>>a[n].izgotovitel>>a[n].speed;

while(fin.good())

{

n++;

fin>>a[n].model>>a[n].cvet>>a[n].stoimost>>a[n].izgotovitel>>a[n].speed;

}

fin.close();

getch();

}

void avtos::outputfile()

{

int i;

cout<<setw(10)<<"Model "<<setw(15)<<"Cvet "<<setw(15)<<"Stoimost "<<setw(18)<<"Izgotovitel "<<setw(14)<<"Ckopoctb "<<endl;

cout<<endl;

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

cout<<setw(10)<<a[i].model<<setw(15)<<a[i].cvet<<setw(13)<<a[i].stoimost<<setw(18)<<a[i].izgotovitel<<setw(13)<<a[i].speed<<endl;

getch(); }

void avtos::sort_chisl_1()

{

int fl,i,l;

avto t;

l=n-1;

do

{

fl=0;

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

if(strcmp(a[i].cvet ,a[i+1].cvet )>0)

{

t=a[i];

a[i]=a[i+1];

a[i+1]=t;

fl=1;

}

l--;

}

while(fl==1);

return;

getch();

}

void avtos::sort_chisl_2()

{

int fl,i,l;

avto t;

l=n-1;

do

{

fl=0;

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

if(a[i].stoimost>a[i+1].stoimost)

{

t=a[i];

a[i]=a[i+1];

a[i+1]=t;

fl=1;

}

l--;

}

while(fl==1);

return;

getch();

}

void avtos::sort_chisl_3()

{

int fl,i,l;

avto t;

l=n-1;

do

{

fl=0;

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

if(strcmp(a[i].izgotovitel ,a[i+1].izgotovitel )>0)

{

t=a[i];

a[i]=a[i+1];

a[i+1]=t;

fl=1;

}

l--;

}

while(fl==1);

return;

getch();

}

void avtos::sort_chisl_4()

{

int fl,i,l;

avto t;

l=n-1;

do

{

fl=0;

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

if(a[i].speed>a[i+1].speed)

{

t=a[i];

a[i]=a[i+1];

a[i+1]=t;

fl=1;

}

l--;

}

while(fl==1);

return;

getch();

}

void avtos::sohranenie()

{

char file[L];

ofstream out;

int otvet;

cout<<"Sohranit izmeneniya?"<<endl<<"Yes(press 1),No(press 0)";

cin>>otvet;

if(otvet==1)

{

cout<<"Vvedite direktoriyu, kuda vj bj hoteli sohranit: ";

cin>>file;

out.open(file);

if(out==NULL)

cout<<"File ne sozdan"<<endl<<"Programm to be finished";

getch();

exit(1);

}

}

int i;

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

out<<setw(10)<<a[i].model<<setw(10)<<a[i].cvet<<setw(10)<<a[i].stoimost<<setw(13)<<a[i].izgotovitel<<setw(13)<<a[i].speed<<endl;

cout<<endl;

getch();

}

void avtos::redaktirovanie()

{

int c,r;

cout<<"Vvedite nomer stroki,kotoruiu nujno otredaktirovat: ";

cin>>c;

cout<<c<<"."<<a[c-1].model<<" "<<a[c-1].cvet<<" "<<a[c-1].stoimost<<" "<<a[c-1].izgotovitel<<" "<<a[c-1].speed<<endl;

cout<<"Izmenit naimenovanie? (1 Da/0 Net):"<<endl;

cin>>r;

if(r)

{

cout<<"Model: ";

in>>a[c-1].model;

}

cout<<"Izmenit cvet avto? (1 Da/0 Net):"<<endl;

cin>>r;

if(r)

{

cout<<"Cvet avto: ";

cin>>a[c-1].cvet;

}

cout<<"Izmenit stoimost? (1 Da/0 Net):"<<endl;

cin>>r;

if(r)

{

cout<<"stoimost";

cin>>a[c-1].stoimost;

}

cout<<"Izmenit izgotovitel? (1 Da/0 Net):"<<endl;

cin>>r;

if(r)

{

cout<<"Izgotovitel: ";

cin>>a[c-1].izgotovitel;

}

cout<<"Izmenit ckopocmb? (1 Da/0 Net):"<<endl;

cin>>r;

if(r)

{

cout<<"Ckopoctb:";

cin>>a[c-1].speed;

}

cout<<endl;

cout<<"Redaktirovanie zaversheno."<<endl;

return;

getch();}

void avtos::udalenie()

{

int i,c;

cout<<"Vvedite nomer stroki,kotoruiu neobhodimo udalit: "<<endl;

cin>>c;

if (c>n) cout<<"Dannaia stroka v baze dannih otsutstvuet."<<endl;

else

{

cout<<c<<"."<<a[c-1].model<<" "<<a[c-1].cvet<<" "<<a[c-1].stoimost<<" "<<a[c-1].izgotovitel<<" "<<a[c-1].speed<<endl;

for (i=c;i<=n;i++)

{

a[i-1] = a[i];

}

cout<<"Stroka "<<c<<" udalena."<<endl;

n=n-1;

}

return;

getch();

}

void avtos::add()

{

struct avto x;

cout<<"Vvedite dannie novogo avto: "<<endl;

cout<<n+1<<".";

cout<<"Nomer: "<<endl;

cin>>x.d;

cout<<"Model: ";

cin>>x.model;

cout<<"Cvet avto: ";

cin>>x.cvet;

cout<<"Stoimost avto: ";

cin>>x.stoimost;

cout<<"Izgotovitel: ";

cin>>x.izgotovitel;

cout<<"Ckopocmb: ";

cin>>x.speed;

cout<<endl;

a[n]=x;

n=n+1;

cout<<"Zapisi dobavleni."<<endl;

return;

getch();

}

void avtos::input()

{

int i;

cout<<"Vvedite kolichestvo strok:"<<endl;

cin>>n;

cout<<"Vvedite dannie avto:"<<endl;

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

{

cout<<i+1<<".";

cout<<"Nomer: "<<endl;

cin>>a[i].d;

cout<<"Model: ";

cin>>a[i].model;

cout<<"Cvet avto: ";

cin>>a[i].cvet;

cout<<"Stoimost avto: ";

cin>>a[i].stoimost;

cout<<"Izgotovitel: ";

cin>>a[i].izgotovitel;

cout<<"Ckopocmb: ";

cin>>a[i].speed;

cout<<endl;

}

cout<<"Dannie vvedeni."<<endl<<endl;

getch();}

 

 

void avtos::poisk()

{

int i,d=0,f=0,j=0;

int q,w,e,r,t;

char model[L];

long int stoimost;

int speed;

char cvet[L], izgotovitel[L];

cout<<"Proizvesti poisk po: "<<endl;

cout<<"Modeli? Da-1,Net-0: ";

cin>>q;

if(q==1) {cout<<"Vvedite Model:"; cin>>model;f++;}

cout<<"Iskat po cvetu avto? Da-1,Net-0: ";

cin>>w;

if(w==1) {cout<<"Vvedite cvet: ";cin>>cvet;f++;}

cout<<"iskat po stoimosti avto?Da-1,Net-0: ";

cin>>e;

if(e==1) {cout<<"Vvedite stoimost avto: "; cin>>stoimost;f++;}

cout<<"Iskat po izgotovitelu? Da-1,Net-0: ";

cin>>r;

if(r==1) {cout<<"Vvedite izgotovitel: ";cin>>izgotovitel;f++;}

cout<<"Iskat po ckopocmu? Da-1,Net-0: ";

cin>>t;

if(t==1) {cout<<"Vvedite ckopocmb: ";cin>>speed;f++;}

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

{

if(q==1) {if(strcmp(model, a[i].model)==0) d=d+1;}

if(w==1) {if(strcmp(cvet, a[i].cvet)==0) d=d+1;}

if(e==1) {if(stoimost==a[i].stoimost) d=d+1;}

if(r==1) {if(strcmp(izgotovitel, a[i].izgotovitel)==0) d=d+1;}

if(t==1) {if(speed==a[i].speed) d=d+1;}

if(d==f) {cout<<endl<<setw(5)<<i+1<<setw(12)<<a[i].model<<setw(11)<<a[i].cvet<<setw(14)<<a[i].stoimost<<setw(10)<<a[i].izgotovitel<<setw(15)<<a[i].speed<<endl; j=j+1;}

d=0;

}

if(j==0) cout<<"Poisk ne dal rezultata!"<<endl<<endl;

cout<<endl<<endl;

getch();

}

 

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

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

Предоставленная программа  предназначена для работы с базой  данных «Легковые автомобили» для любого пользователя. А использовать её можно как в каких-либо компаниях, так и в жизни любого автолюбителя.

Свойства программы - быстрый ввод, обработка и поиск  данных в данной базе. Программа включает в себя следующие процедуры: создание новой базы данных, просмотр существующей базы данных, редактирование записей, их добавление и удаление (всё с сохранением в текстовом файле), поиск записей и сортировка записей по данному полю.

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

7.Список используемой  литературы

 

  1. Павловская Т.А. С/С++. Программирование на языке высокого уровня – СПб.: Питер, 2006. – 461 с.: ил.
  2. Павловская Т.А.,Щупак Ю.А. С/С++. Структурное программирование: Практикум – СПб.: Питер, 2002. – 240 с.: ил.
  3. Введение в язык С++, Бьярн Страустрап, 1995 г., электронный учебник.

 


Информация о работе Разработка базы данных по легковым автомобилям