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

алгоритмы сортировки - C++

Войти
Регистрация
Восстановить пароль
Другие темы раздела
C++ Получением цвета пикселя из игры http://www.cyberforum.ru/cpp-beginners/thread223138.html
Добрый день! Я пытаюсь получить цвет пикселя из игры WoW Использую такой код: void main() { int x = 1102; int y = 272; HWND test = FindWindow(TEXT("GxWindowClass"),TEXT ("World of Warcraft")); HDC test2 = GetDC(test);
C++ Работа с битовыми операторами Здравствуйте, С Новым Годом! Решил за новогодние празники познакомиться с языком C++. Попалась на глаза книжка Стефана Р. Дэвиса "С++ для чайников". Добрался до примера с битовыми операциями. В книге написано, что вывод должен быть в 16-теричной системе, а при компиляции и запуске программы результат выдаётся в 10-теричной системе. Вопрос такой: почему результат в Dec, а не Hex? Пользуюсь... http://www.cyberforum.ru/cpp-beginners/thread223129.html
C++ Вычисление суммы элементов массива по столбцам
Почему на этой строке scanf("%i",&a); программа зависает ? //Вычисление суммы элементов массива по столбцам #include "stdafx.h" #include "conio.h" using namespace std; #define ROW 3 #define COL 5 void main(){
Ввод матрицы вручную C++
Возможно ли в данной программе сделать ввод матрицы ручным способом (или с помощью рандома, как-то удобнее будет) и введение пользователем координат начала пути и конца? Код пока для меня слишком сложный и сколько ни пытался - ни получилось... Видимо, нужно добавить: это и {srand(time(0)); cout<<" Labirint "<<endl; for (int i=0;...
C++ Взаимодействие сайтов и VC++ http://www.cyberforum.ru/cpp-beginners/thread223094.html
Добрый вечер. Всех с наступившим! Нужна подсказка: где можно почитать про взаимодействие приложения с вебсайтом (получение куки, парсинг кода, отправка форм и тд). Буду благодарен за любую информацию.
C++ Определить три соседних дня с максимальной средней температурой Помогите решить полностью следующие задачи. 1.Начиная с понедельника, 1-го сентября, в течение 3-х недель один раз в день измеряется значение температуры. Таким образом, формируется двумерный массив T размерности 3x7. Найти: а) три соседних дня с максимальной средней температурой. б) два соседних дня, когда температура наиболее резко росла. в) периоды, когда температура понижалась. 2.... подробнее

Показать сообщение отдельно
Skon
1 / 1 / 0
Регистрация: 02.01.2011
Сообщений: 7

алгоритмы сортировки - C++

02.01.2011, 01:35. Просмотров 1202. Ответов 6
Метки (Все метки)

нужно выполнить сортировку массива целых чисел 3 методами: простыми включениями, простым выбором, простым обменом
подскажите пожалуйста как исправить программу чтобы был только 1 массив и заново не инициализировать его перед каждой сортировкой

вот исходный текст выполнен с использованием Borland C++ Builder 6.0


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
#include <vcl.h>
#pragma hdrstop
#include <iostream.h>
void insertSort( int* mas, const int n);
void selectSort( int* mas, const int n);
void bubleSort ( int* mas, const int n);
//---------------------------------------------------------------------------
 
#pragma argsused
int main()
{
const int n=15;// количество элементов массива
int mass[n] = {8, 23, 80, 71, 76, 28, 89, 5, 18, 68, 91, 50, 53, 2, 17};
int i, buff;
for (i=0; i<n; i++) cout <<mass[i]<<' ';
cout<<'\n';
//сортировка выбором
selectSort (mass,n);
//for (i=0; i<n-1; i++) { //n-1 ищем наименьший элемент
//принимаем за наименьший первый из рассматриваемых элементов
//int imin = i;
//поиск номера минимального элемента из неупорядоченный
//for (int j=i+1;j<n;j++)
//если нашли меньший элемент запоминаем его номер
//if (mass[j]<mass[imin])imin=j;
//buff=mass[i]; //обмен элементов
//mass[i]=mass[imin]; //с номерами
//mass[imin]=buff; //i и imin
//}
//вывод упорядоченного массива
for (i=0;i<n;i++)cout <<mass[i]<<' ';
cout<<'\n';
//сортировка вставками
int mass1[n]= {8, 23, 80, 71, 76, 28, 89, 5, 18, 68, 91, 50, 53, 2, 17};
insertSort(mass1,n) ;
int j, k;
//for (i=0; i<n; i++)
//{ buff=mass1[i];
//for (j=i-1; j>=0 && buff<mass1[j]; j--)
//mass1 [j +1]= mass1 [ j ]; //сдвиг на одну позицию
//mass1 [j+1]=buff; }
//вывод упорядоченного массива
for (i=0;i<n;i++)cout <<mass1[i]<<' ';
cout<<'\n';
//сортировка обменом
int mass2[n]= {8, 23, 80, 71, 76, 28, 89, 5, 18, 68, 91, 50, 53, 2, 17};
bubleSort(mass2,n);
//for (k=0;k<n-1;k++){
//for (i=0;i<n-1;i++) if(mass2[i]>mass2[i+1]) {buff=mass2[i];mass2[i]=mass2[i+1];mass2[i+1]=buff;} }
//вывод упорядоченного массива
for (i=0;i<n;i++)cout <<mass2[i]<<' ';
cout<<'\n';
char out;
while (!cin.get(out));
return 0;
}
//--------------------------
 
//сортировка вставками
void insertSort( int* mas,const int n) {
int i,j,value;
for(i = 1; i < n; i++) {
value = mas[i];
for (j = i-1; (j >= 0) && (mas[j] > value); j--){
mas[j+1] = mas[j];
}
mas[j+1] = value;
}
}
//сортировка выбором
void selectSort (int* mas,const int n){
int i,j,buff;
for (i=0; i<n-1; i++) { //n-1 ищем наименьший элемент
//принимаем за наименьший первый из рассматриваемых элементов
int imin = i;
//поиск номера минимального элемента из неупорядоченный
for (int j=i+1;j<n;j++)
//если нашли меньший элемент запоминаем его номер
if (mas[j]<mas[imin])imin=j;
buff=mas[i]; //обмен элементов
mas[i]=mas[imin]; //с номерами
mas[imin]=buff; //i и imin
}
}
//сортировка обменом
void bubleSort (int* mas,const int n){
int k,i,buff;
for (k=0;k<n-1;k++){
for (i=0;i<n-1;i++) if(mas[i]>mas[i+1]) {buff=mas[i];mas[i]=mas[i+1];mas[i+1]=buff;} }
}
 Комментарий модератора 
Используйте теги форматирования кода.
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
 
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru