Форум программистов, компьютерный форум, киберфорум
С++ для начинающих
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.80/5: Рейтинг темы: голосов - 5, средняя оценка - 4.80
0 / 0 / 0
Регистрация: 05.02.2012
Сообщений: 12

Работа с табличными базами данных. Реализация функции сортировки.

27.04.2012, 18:01. Показов 1072. Ответов 1
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Вот код моей программы. Необходимо реализовать функцию сортировки данных!!!
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
//project.cpp - Lab. #8 
#define lname 80
#include<iostream>
#include<fstream>
#include<vector>
#include<algorithm>
using namespace std;
//Îïèñàíèå êëàññà Èíæåíåð
char buf_str[lname];
class Engineer
{ private: static int count; char name[lname]; int age; int rank;
friend class Project;
public: Engineer(); ~Engineer();
void set_name(const char*); 
char* get_name();
void set_age(int); 
int get_age(); void set_rank(int);int get_rank(); 
void show(); void read();
};
int Engineer::count = 0; 
// Ðåàëèçàöèÿ ìåòîäîâ êëàññà Èíæåíåð
Engineer::Engineer(){count++;};
Engineer::~Engineer(){count--; };
void Engineer::set_name(const char*r) { cout<<strlen(r); if (strlen(r) <= lname) {strcpy(name,r);}
else {cout<<"Engineer::set_name: too long name";}
};
char *Engineer::get_name() {return &name[0];};
void Engineer::set_age(int r) {age=r;};
int Engineer::get_age() {return age;};
void Engineer::set_rank(int r) {rank=r;};
int Engineer::get_rank() {return rank;};
void Engineer::show(){cout<<" Name ="<<name<<" Age of engineer= "<<age<<"Rank ="<<rank;};
void Engineer::read() {cout<<"Input Engineer Name "; cin.getline(name, lname);
cout<<" Input Age of engineer "; cin.getline(buf_str, lname); age=atoi(buf_str);
cout<<"Input Rank "; cin.getline(buf_str, lname); rank=atoi(buf_str);};
 
//îïèñàíèå êëàññà Ïðîãðàììèñò
class Programmer: public Engineer
{private: char language [lname]; char organization[lname];
public: void set_language(const char *); char *get_language();
void set_organization(const char *); char *get_organization();
void show(); void read();
};
//Ðåàëèçàöèÿ ìåòîäîâ êëàññà Ïðîãðàììèñò 
void Programmer::set_language(const char *r) {if (strlen(r) <= lname) strcpy(language, r);};
char *Programmer::get_language() {return &language[0];};
void Programmer::set_organization(const char *r) {int i; for (i=0; i<=lname-1; i++)
organization[i]=r[i];};
char *Programmer::get_organization() {return &organization[0];};
void Programmer::show() {Engineer::show(); cout<<" Language="<<language<<" Organization="<<organization<<endl;};
void Programmer::read() {Engineer::read(); cout<<"Input Language "; cin.getline(language, lname);
cout<<" Input Organization ";
cin.getline(organization,lname);};
//îïèñàíèå êëàññà Ïðîåêò
#define max_nprogrammers 20
class Project
{ private: string name; string designer; //
vector <Programmer> Programmers;
vector <Programmer>::iterator pProgrammers;
public: Project();
void set_name(const string); string get_name();
void set_designer(const string); string get_designer();
void show();
void add_programmer(); 
void del_last_programmer(); 
void show_programmers();
void input_programmer(); 
Programmer*find_name(char *name);
void sort_programmer();// ôóíêöèÿ ñîðòèðîâêè/27 àïðåëÿ
void read_file(int); void save_file();
void financing(); void list_programmers();
void del_programmer(); 
void del_programmer_name();
void clear(){Programmers.clear();};
};
//Ðåàëèçàöèÿ ìåòîäîâ êëàññà Ïðîåêò
Project::Project() {};
void Project::set_name(const string r) {name=r;};
string Project::get_name() {return name;};
void Project::set_designer(const string r) {designer= r;};
string Project::get_designer() {return designer;};
//*  
void Project::show() {cout<<" Project="<<name<<" Designer ="<<designer<<endl;};
void Project::add_programmer() {Programmer b; b.read(); Programmers.push_back(b);};
void Project::del_last_programmer() {Programmers.pop_back();};
void Project::show_programmers() {int i;
for (i=0; i<Programmers.size(); i++) Programmers[i].show();};
void Project::del_programmer_name()
{
cout<<"input book's name for remove"<<endl;
cin.getline(buf_str, lname);
pProgrammers=Programmers.begin();
vector <Programmer>::iterator pProgrammers1;
int i=0;
while (pProgrammers != Programmers.end())
{
if ( strcmp(buf_str, Programmers[i].name)== 0 ) {pProgrammers=Programmers.erase(pProgrammers);
pProgrammers=pProgrammers-1;i--;};
pProgrammers++; i++;
};
};
void Project::save_file()
{int i; string namefile;
namefile=name+".fbd";
ofstream fp(namefile.c_str(), ios::out|ios::binary);
for (i=0; i<Programmers.size(); i++) { fp.write( (char *) &Programmers[i], sizeof(Programmer));
};
fp.close();
cout<<"Project::save_file: BD was saved to '"<<namefile<<"'"<<endl;
};
void Project::read_file(int new_append)
{
Programmer s; string namefile;
cout<<"available files"<<endl;
system("dir *.fbd");
cout<<"input name file"<<endl;
cin>>namefile;
namefile=namefile+".fbd";
ifstream fp(namefile.c_str(), ios::in|ios::binary);
if(!fp){cout<<"Project::read_file: error"<<endl; return;};
if (new_append == 0) Programmers.clear();
while(!fp.eof())
{
Programmer *t; t = new Programmer;
fp.read((char *) t, sizeof(Programmer));
Programmers.push_back(*t);
};
Programmers.pop_back();
fp.close();
cout<<"Project::read_file: file '"<<namefile<<"' was read"<<endl;
cin.ignore();
};
void Project::financing()
{int i, s=0;
int nprogrammers=Programmers.size();
for (i=1; i<=nprogrammers; i++)
{s=s+Programmers[i-1].age;
};
cout<<"Financing= "<<s<<endl;
};
void Project::list_programmers()
{
pProgrammers=Programmers.begin();
for (int i=0; i<Programmers.size(); i++)
{
Programmers[i].show();
cout<<"correct? (y/n/d/a"<<endl;
char c; cin.get(c); cin.ignore(INT_MAX,'\n');
if(c == 'y') Programmers[i].read(); //èçìåíèòü ýëåìåíò
if(c == 'd') {pProgrammers=Programmers.erase(pProgrammers+i); pProgrammers--;}; //óäàëèòü ýëåìåíò
if(c == 'a') {Programmer t; t.read();
Programmers.insert(pProgrammers+i, t);}; //äîáàâèòü ýëåìåíò;
 
};
}
0
IT_Exp
Эксперт
34794 / 4073 / 2104
Регистрация: 17.06.2006
Сообщений: 32,602
Блог
27.04.2012, 18:01
Ответы с готовыми решениями:

Работа с базами данных
Здравствуйте, мне нужно удаленно подключиться к базе данных mysql как это можно сделать?

Работа с базами данных
Предусмотренно ли в паскале работа с БД? Подскажите или дайте направление. Хочу создать простенькую БД с несколькими полями 5-10. Можно ли...

Работа с базами данных
Недавно прочитал про пару интересных возможностей HTML5, а именно Web Storage и работа с БД. Можно ли создать какой-то скрипт при помощи...

1
601 / 569 / 104
Регистрация: 07.11.2010
Сообщений: 2,004
27.04.2012, 18:03
Алгоритмы сортировок
пожалуйста
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
BasicMan
Эксперт
29316 / 5623 / 2384
Регистрация: 17.02.2009
Сообщений: 30,364
Блог
27.04.2012, 18:03
Помогаю со студенческими работами здесь

Работа с базами данных
Не могли бы вы дать инфу, статьи о работе с базами данных? Например, у меня есть БД Access, как с ней связаться можно? Выполнять запросы?...

Работа с базами данных C#
Всем привет. Возникла потребность в работе с базами данных. Подскажите хороший источник, где можно почитать по этому поводу. Сам в...

Работа с базами данных
Здравствуйте! До недавнего времени понадобилось разобраться с базами данных... С теорией баз данных знаком, с языками программирования...

Работа с базами данных
У Хаскела имеется интерфейс к сабжу? Где про это можно почитать?

Работа с базами данных
Скажите в чем здесь ошибка void dbLoad() // загрузка базы данных { QSqlDatabase *db = new QSqlDatabase; ...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
2
Ответ Создать тему
Новые блоги и статьи
Загрузка PNG-файла с альфа-каналом с помощью библиотеки SDL3_image на Android
8Observer8 27.01.2026
Содержание блога SDL3_image - это библиотека для загрузки и работы с изображениями. Эта пошаговая инструкция покажет, как загрузить и вывести на экран смартфона картинку с альфа-каналом, то есть с. . .
влияние грибов на сукцессию
anaschu 26.01.2026
Бифуркационные изменения массы гриба происходят тогда, когда мы уменьшаем массу компоста в 10 раз, а скорость прироста биомассы уменьшаем в три раза. Скорость прироста биомассы может уменьшаться за. . .
Воспроизведение звукового файла с помощью SDL3_mixer при касании экрана Android
8Observer8 26.01.2026
Содержание блога SDL3_mixer - это библиотека я для воспроизведения аудио. В отличие от инструкции по добавлению текста код по проигрыванию звука уже содержится в шаблоне примера. Нужно только. . .
Установка Android SDK, NDK, JDK, CMake и т.д.
8Observer8 25.01.2026
Содержание блога Перейдите по ссылке: https:/ / developer. android. com/ studio и в самом низу страницы кликните по архиву "commandlinetools-win-xxxxxx_latest. zip" Извлеките архив и вы увидите. . .
Вывод текста со шрифтом TTF на Android с помощью библиотеки SDL3_ttf
8Observer8 25.01.2026
Содержание блога Если у вас не установлены Android SDK, NDK, JDK, и т. д. то сделайте это по следующей инструкции: Установка Android SDK, NDK, JDK, CMake и т. д. Сборка примера Скачайте. . .
Использование SDL3-callbacks вместо функции main() на Android, Desktop и WebAssembly
8Observer8 24.01.2026
Содержание блога Если вы откроете примеры для начинающих на официальном репозитории SDL3 в папке: examples, то вы увидите, что все примеры используют следующие четыре обязательные функции, а. . .
моя боль
iceja 24.01.2026
Выложила интерполяцию кубическими сплайнами www. iceja. net REST сервисы временно не работают, только через Web. Написала за 56 рабочих часов этот сайт с нуля. При помощи perplexity. ai PRO , при. . .
Модель сукцессии микоризы
anaschu 24.01.2026
Решили писать научную статью с неким РОманом
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru