Форум программистов, компьютерный форум, киберфорум
С++ для начинающих
Войти
Регистрация
Восстановить пароль
 
Рейтинг 4.56/9: Рейтинг темы: голосов - 9, средняя оценка - 4.56
delpix.ru
19 / 19 / 3
Регистрация: 06.05.2011
Сообщений: 235
1

Сортировка информации из базы данных

03.06.2011, 08:02. Показов 1688. Ответов 4
Метки нет (Все метки)

Вот функция вывода из файла:
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
void Open()
{
    Abbase z3;
    system ("cls");
    cout<<"Abbase 0.36 beta 3\n"<<endl;
    cout<<"Таблица все внесенных абитуриентов\n"<<endl;
    ifstream fin("base.txt");
    if (!fin)
        cout <<"База пуста!\n";
    else
    {
        int n=1;
        cout <<"|Номер|Фамилия|Имя|Отчество|Год рождения|Размер стипендии|\n";
        while (!fin.eof())
        {
            
            fin>>z3.number>>z3.family>>z3.f_name>>z3.l_name>>z3.gr>>z3.st;
            cout<<n<<" "<<z3.number<<" "<<z3.family<<" "<<z3.f_name<<" "<<z3.l_name<<" "<<z3.gr<<" "<<z3.st<<endl;
            n++;
        }
        fin.close();
    }
    Navigation();
}
Вот моя структура:

C++
1
2
3
4
5
6
7
8
9
struct Abbase
{
        char family[20];//Фамилия абитуриента
        char f_name[20];//Имя абитуриента
        char l_name[20];//Отчество абитуриента
        int number;//Табельный номер абитуриента
        int gr;//Год рождения абитуриента
        double st;//Размер стипендии абитуриента
};
Мне нужно разработать функцию для сортировки по году рождения и по размеру стипендии, желательна сортировка пузырьком

Добавлено через 9 часов 17 минут
Помогите
__________________
Помощь в написании контрольных, курсовых и дипломных работ здесь
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
03.06.2011, 08:02
Ответы с готовыми решениями:

Вывод информации из базы данных
здравствуйте. есть форма для добавления информации в БД. &lt;form method=&quot;post&quot;&gt; &lt;b&gt;name&lt;/b&gt;&lt;br&gt; ...

Извленечие информации из базы данных
Есть код извлечения информации из базы данных. Он работает идеально. Скопировал его в другой php...

Вывод информации из базы данных
Здравствуйте, подскажите пожалуйста новичку как вывести из базы данных конкретную информацию по...

Вывод информации из базы данных
Доброго времени! Интересует вопрос, на сайте гость бронирует ресурс (вводит свои данные, производит...

4
770 / 760 / 59
Регистрация: 06.07.2009
Сообщений: 3,020
03.06.2011, 08:10 2
Проще сортировки пузырьком даже не существует....
Делаешь бесконечный цикл с выходом по флагу
устанавливаешь флаг
Перебираешь все записи
Сравниваешь каждую пару и меняешь их местами, если они не в правильном порядке.
Если была замена сбрасываешь флаг

В итоге у тебя будет сортировка пробегать пока после полного прохода ничего менять местами не понадобится.
0
delpix.ru
19 / 19 / 3
Регистрация: 06.05.2011
Сообщений: 235
03.06.2011, 08:16  [ТС] 3
Цитата Сообщение от vitaly1981 Посмотреть сообщение
Проще сортировки пузырьком даже не существует....
Делаешь бесконечный цикл с выходом по флагу
устанавливаешь флаг
Перебираешь все записи
Сравниваешь каждую пару и меняешь их местами, если они не в правильном порядке.
Если была замена сбрасываешь флаг

В итоге у тебя будет сортировка пробегать пока после полного прохода ничего менять местами не понадобится.
А с кодом не поможешь? Я понимаю что стоит самому попробовать, но курсач поджимает.
0
770 / 760 / 59
Регистрация: 06.07.2009
Сообщений: 3,020
03.06.2011, 08:36 4
Delpix, Ну блин, тебе еще и готовое решение подавай, ну уж такую простую вещь и сам бы мог написать, алгоритм я тебе показал. Если тебе тупо лень кодить, то иди в раздел фриланса.
0
166 / 165 / 46
Регистрация: 10.10.2010
Сообщений: 725
03.06.2011, 11:43 5
Сортировка пузырьком
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
void bubble_sort(int n,int *mass)
{
int tmp;
for(int i = 0;i < n;i++)
for(int j = 0;j < n - i - 1;j++)
{
if(mass[j]>mass[j+1];
{
tmp = mass[j];
mass[j] = mass[j+1];
mass[j + 1] = tmp; 
}
}
}
Вместо mass вы передаете массив,где вы содержите размер стипендии,или года рождений
скорее всего у вас будет что-то типа этого
C++
1
z3[j].qr
- массив годов
Тогда:
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
int main(void)
{
//some code
 
int tmp;
for(int i = 0;i < n;i++)
for(int j = 0;j < n - i - 1;j++)
{
if(z3[j].qr>z3[j+1].qr;
{
tmp = z3[j].qr;
z3[j].qr = z3[j+1].qr;
z3[j + 1].qr = tmp; 
}
}
}
вроде так,дальше то же самое с стипендией
1
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
03.06.2011, 11:43

Вывод информации из базы данных
Всем привет! Можно ли как-то вывести информацию из базы данных куда-нибудь кроме DBGrid? ...

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

Правильное отображение информации из базы данных
Допустим есть определенный текст который берется из базы. Для отображения данного текста...

Вывод информации из базы данных в dataGrid
Здравствуйте, имеется код с помощью которого у меня выводится информация из базы данных в таблицу...


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

Или воспользуйтесь поиском по форуму:
5
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2022, CyberForum.ru