Форум программистов, компьютерный форум CyberForum.ru

Как записать ответ с методом пузырька? - C++

Восстановить пароль Регистрация
 
sasiska
1 / 1 / 0
Регистрация: 16.05.2011
Сообщений: 25
03.06.2012, 11:30     Как записать ответ с методом пузырька? #1
Собственно програмка выдает около 100 разных значений, как можно было бы записать их методом пузырька в массив? Или еще лучше, если бы, например у нас есть ответ, 2 параметра результата, например "s=100 v=10; s=30 v=12....s=55 v=33; s=33 v=11" вот отсартировать по S, что бы получилось 100 55 33 30 , а уже к ним, хоть отдельной строкой 10 33 11 12, последовтельно
Можно код, пожалуйста?
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
03.06.2012, 11:30     Как записать ответ с методом пузырька?
Посмотрите здесь:

C++ Блок схема. Как изобразить методом прямого обмена («пузырька»)?
C++ Как отсортировать двумерный массив по возрастанию методом пузырька?
Сортировка методом пузырька C++
Сортировка методом пузырька C++
C++ Сортировка методом пузырька
C++ Нечетные элементы массива отсортировать методом пузырька, а четные методом прямого доступа
C++ Отсортировать массив методом минимального элемента и методом пузырька
Сортировка методом пузырька C++

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

Или воспользуйтесь поиском по форуму:
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
zitxbit
Master C/C++
 Аватар для zitxbit
86 / 738 / 75
Регистрация: 11.04.2012
Сообщений: 971
03.06.2012, 12:40     Как записать ответ с методом пузырька? #2
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
#include <stdio.h>
#include <conio.h>
 
typedef struct SV
{
    int s;
    int v;
} SV;
 
#define __countof(p) sizeof(p) / sizeof(p[0]) \
 
bool issorted(SV* psv, int n);
void swap(SV& sv1, SV& sv2);
 
int main()
{
    static SV sv[] = { { 100, 10 }, { 30, 12 }, { 55, 33 }, { 33, 11 }, { 200, 44 } }; 
 
    do {
         for (int i = 0; i < __countof(sv); i++)
              if (sv[i].s < sv[i+1].s) swap(sv[i],sv[i+1]);
    }while(!issorted((SV*)sv, __countof(sv)));
 
    for (int i = 0; i < __countof(sv); i++)
        printf("s = %d v = %d\n",sv[i].s,sv[i].v);
 
    _getch();
}
 
bool issorted(SV* psv, int n)
{
    bool found = false;
    for (int i = 0; i < n && !found; i++)
        found = psv[i].s < psv[i+1].s ? 1 : 0; 
    return !found;
}
 
void swap(SV& sv1, SV& sv2)
 { SV _tsv = sv1; sv1 = sv2; sv2 = _tsv; }
http://liveworkspace.org/code/f83302...9b9b118fcf6314
Yandex
Объявления
03.06.2012, 12:40     Как записать ответ с методом пузырька?
Ответ Создать тему
Опции темы

Текущее время: 18:12. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru