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

Написать ф-ю,которая сортирует одномерный массив по возрастанию или убыванию(задается пользователем),и программу для ее тестирования - C++

Восстановить пароль Регистрация
 
violettast
0 / 0 / 0
Регистрация: 17.01.2013
Сообщений: 9
17.01.2013, 12:00     Написать ф-ю,которая сортирует одномерный массив по возрастанию или убыванию(задается пользователем),и программу для ее тестирования #1
Написать ф-ю,которая сортирует одномерный массив по возрастанию или убыванию(задается пользователем),и программу для ее тестирования.Задание размера массива,динамическое резервирование памяти,ввод значений эл-ов и отображение результатов производлится в главной ф-и.
С++

Добавлено через 30 минут
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
#include <iostream>
using namespace std;
 
 
 void bubbleSort(int array[], int col){                    
        int temp=0;                              
        for (int i=1;  i<col  ;  i++){            
                for (int j=0;  j<col-i;  j++){     
                        if (array [j]>array [j+1]){     
                                temp=array[j];           
                                array [j]=array [j+1];    
                                array [j+1]=temp;
                        }
                }
        }
}
void main(){
        int i, size;
        int *array;
    cout << "Enter array dimension: ";
    cin >> size;
        array = new int[size];
    cout << "Enter " << size << " elements: ";
        for ( i = 0; i < size; i ++ ){
                cin >> array[i];
        }
 
        bubbleSort( array, size );
 
        cout << "Your array after sorting: ";
        for ( i = 0; i < size; i ++ ){
                cout << array[i] << " ";
        } 
    cout << "\nPress \"Enter\" to continue..." << endl; 
    system("pause");
}
эта программа сортирует только по возрастанию.как сделать,что бы сортировала еще и по убыванию?
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
17.01.2013, 12:00     Написать ф-ю,которая сортирует одномерный массив по возрастанию или убыванию(задается пользователем),и программу для ее тестирования
Посмотрите здесь:

C++ Написать программу которая бы заполняла одномерный массив (в 40 элементов) рандомными числами.
C++ Написать функцию, которая сортирует вещественный массив методом Хоара
Cгенерировать одномерный массив из 10 чисел,отсортировать его по возрастанию или убыванию C++
написать ф-ю,которая подсчитывает сколько раз непрерывная ф-я проходила через экстремум на интервале,и программу для ее тестирования C++
C++ Написать функцию, которая сортирует массив по возрастанию или по убыванию, в зависимости от третьего параметра функции.
Написать программу, которая методом обмена "пузырька" сортирует по убыванию введенный с клавиатуры одномерный массив C++
Отсортировать массив по убыванию или по возрастанию C++
Целочисленный одномерный массив, сортировка по убыванию и возрастанию C++

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

Или воспользуйтесь поиском по форуму:
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
Ev[G]eN
Эксперт С++
 Аватар для Ev[G]eN
5093 / 1531 / 381
Регистрация: 23.01.2011
Сообщений: 3,148
17.01.2013, 12:19     Написать ф-ю,которая сортирует одномерный массив по возрастанию или убыванию(задается пользователем),и программу для ее тестирования #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
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
#include <iostream>
 
void ascendingSort (int array[], int size);
void descendingSort (int array[], int size);
 
int main ()
{
    int size = 0;
    std::cout << "Enter size: ";
    std::cin >> size;
    
    int *array = new int [size];
    std::cout << "Enter the array of " << size << " elements: ";
    for (int i = 0; i < size; i++)
        std::cin >> array[i];
    
    int userChoise = 0;
    do {
        std::cout << "Sorted by: " << std::endl;
        std::cout << "1. Ascending; " << std::endl;
        std::cout << "2. Descending; " << std::endl;
        std::cin >> userChoise;
    } while (userChoise < 1 && userChoise > 2);
    
    switch (userChoise) {
    case 1:
         ascendingSort(array, size);
         std::cout << "Array: " << std::endl;
         for (int i = 0; i < size; i++)
             std::cout << array[i] << " ";
         break;
    case 2:
         descendingSort(array, size);
         std::cout << "Array: " << std::endl;
         for (int i = 0; i < size; i++)
             std::cout << array[i] << " ";
         break;
    }
    std::cout << std::endl;
    
    delete [] array;
    system("pause");
    return 0;
}
 
void ascendingSort (int array[], int size)
{
     for (int i = 1; i < size; i++) 
         for (int j = 0; j < size - i; j++)
             if (array[j] > array[j + 1]) {
                          int temp = array[j];
                          array[j] = array[j + 1];
                          array[j + 1] = temp;
             }
}
 
void descendingSort (int array[], int size)
{
     for (int i = 1; i < size; i++) 
         for (int j = 0; j < size - i; j++)
             if (array[j] < array[j + 1]) {
                          int temp = array[j];
                          array[j] = array[j + 1];
                          array[j + 1] = temp;
             }
}
Yandex
Объявления
17.01.2013, 12:19     Написать ф-ю,которая сортирует одномерный массив по возрастанию или убыванию(задается пользователем),и программу для ее тестирования
Ответ Создать тему
Опции темы

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