С Новым годом! Форум программистов, компьютерный форум, киберфорум
Наши страницы

С++ для начинающих

Войти
Регистрация
Восстановить пароль
 
FedVetal
0 / 0 / 0
Регистрация: 29.08.2012
Сообщений: 53
#1

Сортировка масивов - C++

23.11.2012, 01:17. Просмотров 295. Ответов 4
Метки нет (Все метки)

Посмотрите пжл что не так
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
# include <iostream>
using namespace std;
int main()
{int a[10]={10,12,6,4,1,8,17,2,9};
int c,is;
    for(int i=0;i<10;i++)
    cout <<a[i]<<" ";
    do{is=0;
    for(int i=1;i<10;i++)
        if(a[i-1]>a[i])
        {c=a[i];
    a[i]=a[i-1];
    a[i-1]=c;
    is=1;};
    }
    while(is=1);
    for(int i=0;i<10;i++)
        {cout<<a[i];}
    cout<<endl;
return 0;}
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
23.11.2012, 01:17
Здравствуйте! Я подобрал для вас темы с ответами на вопрос Сортировка масивов (C++):

Сортировка масивов - C++
Сабж. Не могу додуматься до решения, особенно вторая задача. 1. Организуйте массив, содержащий 20 различных целых чисел. После этого 10...

Сортировка двух масивов с++ - C++
Помогите разработать програму, которая прописовает все числа, которые не повторяються с масива А(n) в масив В(n) и печатает масив В(n) по 5...

Перенагрузка масивов - C++
Перегрузить масив в виде очереди.Выручайте АДТ - черга. Додатково перевантажити наступні операції: + - додати елемент; - - витягнути...

Обработка масивов - C++
Задана матрица размерностью N * M . Поменять местами строки матрицы по алгоритму : 1 с последним , 2 с предпоследним и тд . в окрашенной...

Объединение масивов - C++
Итак есть задание:&quot; n- количество масивов какие нужно обеденить, a- масив указателей на масивы которые нужно нужно обьеденить size -...

Програма на масив масивов - C++
Помогите написать задачу, очень надо... Я в с++ вааше 0... Ввести прямоугольною матрицу целых чисел. Напечатать номера строк матрицы, ...

4
MrGluck
Модератор
Эксперт CЭксперт С++
7498 / 4614 / 694
Регистрация: 29.11.2010
Сообщений: 12,634
23.11.2012, 01:24 #2
C++
1
2
3
is=1;};
    }
    while(is=1);
Вечный цикл

Добавлено через 5 минут
и еще у вас массив объявлен размерностью 10, а проинициализирован лишь 9 элементами.
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
# include <iostream>
using namespace std;
int main()
{int a[10]={10,12,6,4,1,8,17,2,9,1};
int c;
    for(int i=0;i<10;i++)
    cout <<a[i]<<" ";
    for(int i=1;i<10;i++)
        for(int j=i;j<10;j++)
        if(a[i-1]>a[j])
        {c=a[j];
    a[j]=a[i-1];
    a[i-1]=c;
    }
    cout<< endl;
    for(int i=0;i<10;i++)
        {cout<<a[i]<< " ";}
    cout<<endl;
return 0;}
0
FedVetal
0 / 0 / 0
Регистрация: 29.08.2012
Сообщений: 53
23.11.2012, 01:26  [ТС] #3
точно ,в оригинале было просто while(is); а что ета строчка значит? можете обьяснирть?
0
MrGluck
Модератор
Эксперт CЭксперт С++
7498 / 4614 / 694
Регистрация: 29.11.2010
Сообщений: 12,634
23.11.2012, 01:28 #4
Сокр. запись while(is != 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
#include <iostream>
 
using namespace std;
 
int main()
{
    const int N = 10;
    int a[N] = {10, 12, 6, 4, 1, 8, 17, 2, 9, 1 };
 
    for(int i=0; i < N;i++)
        cout<< a[i]<< " ";
    cout<< endl;
 
    for(int i=1; i < N; i++)
        for(int j=i; j < N; j++)
            if(a[i - 1] > a[j])
            {
                int c = a[j];
                a[j]=a[i - 1];
                a[i - 1]=c;
            }
 
    for(int i=0;i<10;i++)
        cout<< a[i]<< " ";
    cout<< endl;
    return 0;
}
0
TrueBit
96 / 96 / 12
Регистрация: 19.11.2012
Сообщений: 195
23.11.2012, 01:36 #5
Т.Кормен, Ч.Лейзер "Алгоритмы" страници 57,72. Приведены 2 интересных алгоритма сортировки.

p.s. Написано доходчиво на языке псевдо кода.
0
23.11.2012, 01:36
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
23.11.2012, 01:36
Привет! Вот еще темы с ответами:

Обработка двумерных масивов - C++
Задана матрица А(n,n). Определить максимальный элемент среди элементов матрицы, расположенных выше главной диагонали, и минимальный...

Обработка одномерных масивов. - C++
1) Найти максимальный элемент массива A. 2) Найти среднее арифметическое элементов массива В. A (25), B (30) Метод сортировки...

Ошибки при обробке масивов - C++
Решил задачу, но есть оршибки.#include &lt;stdio.h&gt; #include &lt;math.h&gt; #include &lt;conio.h&gt; float m(float r) { float z; int S=0,...

Обработка одномерных масивов, обьясните новичку. - C++
1) Найти максимальный элемент массива A. 2) Найти среднее арифметическое элементов массива В. A (25), B (30) Метод сортировки...


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

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

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.