Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > C/C++ программирование > Общие вопросы C/C++
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 28.06.2010, 19:56   #1
Darknes
Пользователь
 
Аватар для Darknes
 
Регистрация: 28.06.2010
Сообщений: 40
По умолчанию Метод пузырька

Кто помнит метод пузырька напишите для с++ 4.5.
Darknes вне форума Ответить с цитированием
Старый 28.06.2010, 20:09   #2
_-Re@l-_
C++, Java
Старожил
 
Аватар для _-Re@l-_
 
Регистрация: 10.04.2010
Сообщений: 2,665
По умолчанию

Код:
A[i]=t;
A[i+1]=A[i];
t=A[i+1];
Вроде метод пузырька как-то так выглядит
Не знаю как на С++, но на паскале так:
Код:
var
  a:array[1..10] of integer;
  i,j,t:integer;
begin
     for i:=1 to 10 do
     begin
          write('A[',i,'] = ');
          readln(A[i]);
     end;
     for i:=1 to 9 do
     for j:=i+1 to 10 do
     if a[i]>a[j] then
     begin
          t:=a[i];
          a[i]:=a[j];
          a[j]:=t;
     end;
     writeln;
     for i:=1 to 10 do
     write(a[i],' ');
     readln;
end.

Последний раз редактировалось _-Re@l-_; 28.06.2010 в 20:28.
_-Re@l-_ вне форума Ответить с цитированием
Старый 28.06.2010, 20:29   #3
Darknes
Пользователь
 
Аватар для Darknes
 
Регистрация: 28.06.2010
Сообщений: 40
По умолчанию

блин прикол в том что я знаю как на Паскале а вот на с++ нет
Darknes вне форума Ответить с цитированием
Старый 28.06.2010, 20:56   #4
sever-42
Пользователь
 
Регистрация: 22.04.2010
Сообщений: 96
По умолчанию

что-то, вроде этого:

Код:
int comp(const int *s1, const int *s2)
{
	return *s1 - *s2;
}

void swap(int *s1, int *s2)
{
	int temp;

	temp = *s1;
	*s1 = *s2;
	*s2 = temp;
}

void sort(int *str, int num, int (*comp_p) (const int *, const int *))
{
	for (int i = 0; i < num; i++)
		for (int j = 0; j < num; j++) {
			if (comp_p(str+i, str+j) < 0)
				swap(str+i, str+j);
		}
}
include <Qt>

Последний раз редактировалось sever-42; 28.06.2010 в 21:02.
sever-42 вне форума Ответить с цитированием
Старый 28.06.2010, 21:56   #5
Pihan
Пользователь
 
Аватар для Pihan
 
Регистрация: 09.12.2008
Сообщений: 26
По умолчанию

ну вот мой вариант на си
k=18;
do
{
--k;
p=1;
for(x=0;x<=k-1;x++)
{
if(b[x]>b[x+1])
{
c=b[x];
b[x]=b[x+1];
b[x+1]=c;
p=0;
}
}
}
while(p==0);
Pihan вне форума Ответить с цитированием
Старый 28.06.2010, 22:08   #6
NiCola999
Не
Участник клуба
 
Регистрация: 29.10.2009
Сообщений: 1,456
По умолчанию

Код:
void bubble_sort(int* arr, int size){  // arr - указатель на первый элемент массива, size - размер всего массива
     for(int i=0; i<size; i++){
           for(int j=0; j<size; j++){
                    if(arr[i] > arr[j]){
                             arr[i] ^= arr[j]; arr[j] ^= arr[i]; arr[i] ^= arr[j];                             
                    }
           }
     }
}

Последний раз редактировалось NiCola999; 28.06.2010 в 22:13.
NiCola999 вне форума Ответить с цитированием
Старый 28.06.2010, 22:14   #7
Darknes
Пользователь
 
Аватар для Darknes
 
Регистрация: 28.06.2010
Сообщений: 40
По умолчанию

тока я не понял чо обозначает ^???
Darknes вне форума Ответить с цитированием
Старый 28.06.2010, 22:30   #8
Гром
Старожил
 
Аватар для Гром
 
Регистрация: 21.03.2009
Сообщений: 2,193
По умолчанию

Код:
arr[i] ^= arr[j]; arr[j] ^= arr[i]; arr[i] ^= arr[j];
сиречь обмен значений arr[i] и arr[j].
А вообще-то - гугль и книжки в помощь!
Простые и красивые программы - коды программ + учебник C++
Создание игры - взгляд изнутри - сайт проекта
Тема на форуме, посвященная ему же
Гром вне форума Ответить с цитированием
Старый 28.06.2010, 22:40   #9
NiCola999
Не
Участник клуба
 
Регистрация: 29.10.2009
Сообщений: 1,456
По умолчанию

^ операция xor
NiCola999 вне форума Ответить с цитированием
Старый 28.06.2010, 23:28   #10
dxdy
Пользователь
 
Регистрация: 11.06.2010
Сообщений: 78
По умолчанию

на форуме эта тема обсуждалась:
http://programmersforum.ru/showthread.php?t=104034
Я не волшебник, я еще только учусь ٩(๏̯͡๏)۶
dxdy вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Метод пузырька gennc Общие вопросы C/C++ 2 15.06.2010 17:57
Метод пузырька(c++) ioda1986 Помощь студентам 1 25.02.2010 10:42
Сортировка строк(метод пузырька) Serjuk Помощь студентам 0 03.01.2010 19:01
Сортировка простым выбором (метод пузырька)) Sparky Assembler - Ассемблер (FASM, MASM, WASM, NASM, GoASM, Gas, RosAsm, HLA) и не рекомендуем TASM 3 22.09.2009 18:06
Метод пузырька 13Anka07 Паскаль, Turbo Pascal, PascalABC.NET 1 23.05.2009 19:36