Дело в том что написал программу (отсортировать 5 чисел методом пузырька), ввожу числа и в ответ получаю ничего, только код справа совсем не похож на сортировку. Что необходимо подправить, также интересует строка cout<<x;>>a[5];
for (i=0; i<5; i++)
{
for (j=i+1; j<5; j++)
{
if (a>a[j])
{
x=a;
a=a[j+1];
a[j]=x;
}
}
}
cout<<"Otsort massiv:";
cout<"\n";
cout<
Другие языки программирования и технологии
Подскажите пожалуйста что необходимо исправить (метод пузырька на с++)
#include <iostream>
#include <ctime>
#define N 5
using namespace std;
int main()
{
setlocale(LC_CTYPE, "Russian_Russia.1251");
srand((unsigned) time(NULL));
int a[N];
cout << "\n Исходный: \t\t";
for (int n = 0; n < N; n++)
{
a[n] = rand();
cout << ' ' << a[n];
}
cout << endl;
int m, temp;
for (int n = 1; n < N; n++)
{
for (m = 0; m < N - n; m++)
{
if (a[m] > a[m + 1])
{
temp = a[m];
a[m] = a[m + 1];
a[m + 1] = temp;
}
}
}
cout << "\n По возрастанию: \t";
for (int n = 0; n < N; n++)
cout << ' ' << a[n];
cout << endl;
for (int n = 1; n < N; n++)
{
for (m = 0; m < N - n; m++)
{
if (a[m] < a[m + 1])
{
temp = a[m];
a[m] = a[m + 1];
a[m + 1] = temp;
}
}
}
cout << "\n По убыванию: \t\t";
for (int n = 0; n < N; n++)
cout << ' ' << a[n];
cin.get();
return 0;
}
#include <ctime>
#define N 5
using namespace std;
int main()
{
setlocale(LC_CTYPE, "Russian_Russia.1251");
srand((unsigned) time(NULL));
int a[N];
cout << "\n Исходный: \t\t";
for (int n = 0; n < N; n++)
{
a[n] = rand();
cout << ' ' << a[n];
}
cout << endl;
int m, temp;
for (int n = 1; n < N; n++)
{
for (m = 0; m < N - n; m++)
{
if (a[m] > a[m + 1])
{
temp = a[m];
a[m] = a[m + 1];
a[m + 1] = temp;
}
}
}
cout << "\n По возрастанию: \t";
for (int n = 0; n < N; n++)
cout << ' ' << a[n];
cout << endl;
for (int n = 1; n < N; n++)
{
for (m = 0; m < N - n; m++)
{
if (a[m] < a[m + 1])
{
temp = a[m];
a[m] = a[m + 1];
a[m + 1] = temp;
}
}
}
cout << "\n По убыванию: \t\t";
for (int n = 0; n < N; n++)
cout << ' ' << a[n];
cin.get();
return 0;
}
мне кажется здесь неточность, проверь на компе и печать массива сделай в цикле
or (i=0; i<4; i++)
{
for (j=i+1; j<5; j++)
{
if (a [ i ] >a[j])
{
x=a[ i ] ;
a [ i ]=a[ j ];
a[j]=x;
}
}
}
cout<<"Otsort massiv:";
cout<"\n";
cout
or (i=0; i<4; i++)
{
for (j=i+1; j<5; j++)
{
if (a [ i ] >a[j])
{
x=a[ i ] ;
a [ i ]=a[ j ];
a[j]=x;
}
}
}
cout<<"Otsort massiv:";
cout<"\n";
cout
Код сортировки
void BubbleSort(int count, int* pArr)
{
int trash = 0;
for (int i = 0; i < count; i++)
for (int j=0; j < count-i-1; j++)
if (pArr[j] > pArr[j+1])
{
trash = pArr[j];
pArr[j] = pArr[j+1];
pArr[j+1] = trash;
}
}
void BubbleSort(int count, int* pArr)
{
int trash = 0;
for (int i = 0; i < count; i++)
for (int j=0; j < count-i-1; j++)
if (pArr[j] > pArr[j+1])
{
trash = pArr[j];
pArr[j] = pArr[j+1];
pArr[j+1] = trash;
}
}
Похожие вопросы
- Помогите пожалуйста, решить данную задачу методом пузырька!!!
- Сортировка методом пузырька. Си.
- Помогите с массивом и сортировкой методом пузырька в языке Си! Прогу надо сдать в пятницу срочно, не знаю как начать!
- помогите, пожалуйста, очень срочно нужно как отсортировать число 1079011205 методом пузырька ???
- Нужно ввести массив из 10 элементов и отсортировать их в порядке возрастания методом пузырька, помогите, пожалуйста.
- (C++) Нужна помощь в создании метода "пузырька".
- Помогите найти ошибку в задаче, сортировка методом пузырька работает неправильно.
- Срочно нужна сортировка методом пузырька на с++. Срочносрочносрочно
- Заполните массив случайными числами. Отсортируйте массив по возрастанию методом пузырька.
- Подскажите, как это можно исправить?