на тему рефераты Информационно-образоательный портал
Рефераты, курсовые, дипломы, научные работы,
на тему рефераты
на тему рефераты
МЕНЮ|
на тему рефераты
поиск
Выборы главы Ашинского района
p align="left">При первом запуске программы следует прежде всего создать файл базы данных.

При нажатии на 1 в главном меню вы попадаете в меню создания базы данных. В меню создания выводится список возможных способов создания базы данных. При нажатии на 1 вы можете создать базу данных с адресом по умолчанию, при нажатии на 2 вы можете создать файл базы данных с любым выбранным вами адресом, а при нажатии на 3 файл базы данных создаётся автоматически. Если вам не нужно создавать файл базы данных, то нужно нажать на 4 для выхода в главное меню.

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

При нажатии на 3 в главном меню вы можете удалить ненужную запись. Для этого нужно указать номер записи.

При нажатии на 4 в главном меню вы можете просмотреть базу данных. Чтобы вернуться в главное меню нажмите любую клавишу.

При нажатии на 5 в главном меню вы можете изменять существующие записи. Для этого нужно ввести номер записи, а затем выбрать из списка то, что вы хотите изменить.

При нажатии на 6 вы попадаете в меню сортировки. Если вы нажмёте 1, то будет осуществлена сортировка по фамилии, если на 2, то сортировка по адресу, а если вы нажмёте на 3, то по дате рождения. Для того чтобы вернуться в главное меню нужно нажать 4.

При нажатии в главном меню на 7 вы попадаете в меню поиска. В нём указан список параметров, по которым программа может производиться поиск. Нужно выбрать необходимый параметр.

При нажатии на 8 в главном меню вы попадаете в меню помощи. Для выхода из программы нажмите 0 в главном меню.

Разработанная программа с комментариями.

# include <iostream.h> //Поток ввода вывода

# include <math.h> //Математический файл

# include <conio.h> //Команды управления вывода на экран

# include <stdlib.h> //Стандартная библиотека функции

# include <iomanip.h> //Манипуляторы ввода вывода

# include <fstream.h> //Файловый входной поток

# include <string.h> //Файл строки

struct colizb{char fam[20]; char adres[20]; char datro[10]; char pasport[15];

char kolgol[15];}; //Структура

const n=20; // Максимальное количество записей

colizb gr[n]; //Массив для хранения записей

colizb buf[n]; //Буфер для хранения массива gr

colizb pust;

char name[]="D:/TC/USER/kandid.bin"; //Имя создаваемого файла

int nzap; //Номер записи

int ost; //Количество оставшихся записей

int nzapdop; //Номер дополнительной записи

///////////////////////////////////////////////////////////

void titlist() //Функция титульный лист

{

textbackground(1); //Цвет фона

textcolor(14); //Цвет шрифта

clrscr(); //Очистка экрана

gotoxy(17,2) ; //Установка курсора на заданную позицию

cout<<"Министерство образования Российской Федерации";

gotoxy(18,3);

cout<<"Южно-Уральский Государственный Университет";

gotoxy(30,4);

cout<<"Филиал ЮУрГУ в г. Аше";

gotoxy(32,8);

cout<<"КУРСОВАЯ РАБОТА";

gotoxy(29,9);

cout<<"по информатике на тему:";

gotoxy(26,10);

cout<<"Выборы главы Ашинского района";

gotoxy(41,14);

cout<<"Выполнил: студент гр.ПС180 Стяжкин C.А.";

gotoxy(41,15);

cout<<"Консультант: доцент Рафиков К.М.";

gotoxy(35,19);

cout<<"Аша-2006г";

gotoxy(2,21);

cout<<"Нажмите любую клавишу";

getch();

} //Конец функции

/////////////////////////////////////////////////////////////////////////

void menu() //Функция меню

{

clrscr(); //Очистка экрана

gotoxy(32,2); //Установка курсора на заданную позицию

cout<<"Главное меню";

gotoxy(32,5);

cout<<"1-Создание";

gotoxy(32,6);

cout<<"2-Дополнение";

gotoxy(32,7);

cout<<"3-Удаление";

gotoxy(32,8);

cout<<"4-Просмотр";

gotoxy(32,9);

cout<<"5-Изменение";

gotoxy(32,10);

cout<<"6-Сортировка";

gotoxy(32,11);

cout<<"7-Поиск";

gotoxy(32,12);

cout<<"8-Помощь";

gotoxy(32,13);

cout<<"0-Выход";

gotoxy(2,24);

cout<<"Введите номер команды-";

} //Конец функции

///////////////////////////////////////////////

void sclavi() //Функция ввода с клавиатуры

{

for(int j=0;j<nzap;j++) //Цикл for (счётчик)

{

gotoxy(2,4);

cout<<"Введите фамилию избирателя:"<<endl;

if (cin.peek()=='\n')cin.get();

cin.getline(gr[j].fam,sizeof(gr[j].fam));

//Ввод фамилии кандидата

gotoxy(2,6);

cout<<"Введите адрес:"<<endl;

if (cin.peek()=='\n') cin.get();

cin.getline(gr[j].adres,sizeof(gr[j].adres));

//Ввод адреса избирателя

gotoxy(2,8);

cout<<"Введите дату рождения:"<<endl;

if (cin.peek()=='\n') cin.get();

cin.getline(gr[j].datro,sizeof(gr[j].datro));

//Ввод даты рождения

gotoxy(2,10);

cout<<"Введите номер паспорта:"<<endl;

if (cin.peek()=='\n') cin.get();

cin.getline(gr[j].pasport,sizeof(gr[j].pasport));

//Ввод номера паспорта

gotoxy(2,12);

cout<<"Введите количество голосов: "<<endl;

if (cin.peek()=='\n') cin.get();

cin.getline(gr[j].kolgol,sizeof(gr[j].kolgol));

//Ввод количества голосов

}

}

///////////////////////////////////////////////////////////////

int tofile() //Функция записи в файл

{

ofstream outf; //Выходной поток

outf.open(name, ios::binary);

if (outf.fail()) //Ветвление(если поток не исправен)

{

clrscr(); //Очистка экрана

gotoxy(28,14); //Установка курсора на заданную позицию

cout<<"Файл не открылся";

getch();

return 1; //Выход

} //Конец ветвления

for (int i=0; i<nzap; i++) //Цикл for

outf.write((char *)&gr[i],sizeof(gr[i]));

outf.close();

clrscr(); //Очистка экрана

gotoxy(28,14); //Установка курсора на заданную позицию

cout<<"Файл создан";

gotoxy(1,24);

cout<<"Нажмите любую клавишу ";

return 0; //Выход

} //Конец функции

//////////////////////////////////////////////////////////////////////

void toscreen() //Функция вывода на экран

{

clrscr(); //Очистка экрана

cout<<"----T---------------T---------------T---------------T---------------T------¬"<<endl;

cout<<"¦ № ¦ Ф.И.О ¦ Адрес ¦ дата рожд ¦ № паспорта ¦голоса¦"<<endl;

cout<<"+---+---------------+---------------+---------------+---------------+------+"<<endl;

for (int i=0;i<nzap;i++) //Цикл for

{

cout<<"¦ "<<setw(2)<<setiosflags(ios::left)<<i<<"¦"<<setw(15)

<<gr[i].fam<<"¦"<<setw(15)<<gr[i].adres<<"¦"<<setw(15)

<<gr[i].datro<<"¦"<<setw(15)<<gr[i].pasport<<"¦"<<setw(6)

<<gr[i].kolgol<<"¦"<<endl;

} //Конец цикла for

cout<<"L---+---------------+---------------+---------------+---------------+-------"<<endl;

} //Конец функции

/////////////////////////////////////////////////////////////////////

int izfile() //Функция чтения из файла

{

for (int i=0; i<n; i++) //Счетчик

gr[i]=pust; //Опустошение массива

ifstream inf;

inf.open(name, ios::binary);

if(inf.fail()) //Ветвление

{

clrscr(); //Очистка экрана

gotoxy(28,14); //Установка курсора на заданную позицию

cout<<"Файл не открылся";

getch();

return 1; //Выход

} //Конец ветвления

nzap=0; //Присвоение номера записи к нулю

char ch=inf.peek(); //Смотрит первый символ файла в потоке

while(ch!=EOF) //Цикл с предусловием

{

inf.read((char *)&gr[nzap],sizeof(gr[nzap]));

++nzap; //Увеличение на один шаг

ch=inf.peek();

} //Конец цикла с предусловием

inf.close();

return 0; //Выход

} //Конец функции

////////////////////////////////////////////////////////////////////////

void sozdanie() //Функция создания

{

char r; //Номер команды

clrscr(); //Очистка экрана

gotoxy(28,2); //Установка курсора на заданную позицию

cout<<"Создание";

gotoxy(25,5);

cout<<"1-Создание нового файла: "<<name;;

gotoxy(25,6);

cout<<"2-Сменить адрес файла";

gotoxy(25,7);

cout<<"3-Автоматическое создание файла";

gotoxy(25,8);

cout<<"4-Отмена";

gotoxy(2,24);

cout<<"Введите номер команды:";

cin>>r; //Ввод номера команды

switch(r) //Переключатель для r

{

case '1':

{

clrscr(); //Очистка экрана

gotoxy(2,2);

cout<<"Введите число записей (от 1 до "<<n<<") "<<endl;

cin>>nzap; //Ввод количества записей

sclavi(); //Функция ввода с клавиатуры

tofile(); //Запись файла

getch();

break; //Досрочное завершение switch(r)

Страницы: 1, 2, 3, 4



© 2003-2013
Рефераты бесплатно, курсовые, рефераты биология, большая бибилиотека рефератов, дипломы, научные работы, рефераты право, рефераты, рефераты скачать, рефераты литература, курсовые работы, реферат, доклады, рефераты медицина, рефераты на тему, сочинения, реферат бесплатно, рефераты авиация, рефераты психология, рефераты математика, рефераты кулинария, рефераты логистика, рефераты анатомия, рефераты маркетинг, рефераты релиния, рефераты социология, рефераты менеджемент.