Форум программистов, компьютерный форум, киберфорум
Наши страницы
С++ для начинающих
Войти
Регистрация
Восстановить пароль
 
L1oN
2 / 2 / 1
Регистрация: 25.03.2015
Сообщений: 63
1

Как организовать сортировку динамического массива

05.10.2015, 18:49. Просмотров 204. Ответов 5
Метки нет (Все метки)

Ввести num - количество массивов. Ввести размерность очередного массива и его элементы типа double, разместить их в динамической памяти. Рассортировать массивы по убыванию и вывести на экран.

Как организовать сортировку указанную в условии? Программа выводит огромные значения вместо элементов массивов. Как исправить ошибки, не могу написать нормально программу.

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
#include <stdio.h>
#include <conio.h>
#include <iostream> 
 
using namespace std;
 
void Print(int *x, const int n)
{
    for(int i(0);i<n;i++) cout << x[i] << ' ';
}
 
int TotalSize(int *size,int n)
{
    for(int sum(0),i=0;i<n;i++){
        sum+=size[i];
        return sum;
    }
}
 
void main()
{
    int num = 0;
    cout << "\nEnter a count of arrays: "; cin >> num;
    double **a = new double *[num];
    int *size = new int[num];
    for(int i(0);i<num;i++)
    {
        cout << "Enter a count of elements in " << i+1 << " array: ";
        cin >> size[i]; a[i]=new double[size[i]];
        for(int k(0); k<size[i];k++) cin >> *(a[i]);
    }
    
    int totalsize;
    int *resultarray = new int[totalsize = TotalSize(size,num)];                                        
    Print(resultarray, totalsize);
    delete resultarray;
    system("pause");
 
}

Заказываю контрольные, курсовые, дипломные и любые другие студенческие работы здесь.

0
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
05.10.2015, 18:49
Ответы с готовыми решениями:

Реализовать сортировку двумерного динамического массива
#include &quot;stdafx.h&quot; #include &lt;ctime&gt; #include &quot;stdafx.h&quot; #include &lt;ctime&gt;...

Реализовать многопоточную сортировку динамического массива целых чисел
Есть задание: Написать программу, которая выполняет сортировку...

Организовать ввод с клавиатуры одномерного динамического массива
Организовать ввод с клавиатуры одномерного динамического массива произвольной...

Работа с указателями Организовать ввод динамического массива размером N. Заменить положительные элементы на 1, отрицательные – на -1.
Работа с указателями Организовать ввод динамического массива размером N....

В отдельной функции организовать подсчет суммы элементов динамического массива, которые удовлетворяют условию
Составить программу, в которой сформировать прямоугольную таблицу С из n×m...

5
zss
Модератор
Эксперт С++
7460 / 6836 / 4317
Регистрация: 18.12.2011
Сообщений: 18,086
Завершенные тесты: 1
05.10.2015, 19:28 2
Цитата Сообщение от L1oN Посмотреть сообщение
for(int k(0); k<size[i];k++) cin >> *(a[i]);
C++
1
for(int k(0); k<size[i];k++) cin >> a[i][k];
Добавлено через 1 минуту
Цитата Сообщение от L1oN Посмотреть сообщение
int *resultarray = new int[totalsize = TotalSize(size,num)];
Print(resultarray, totalsize);
resultarray не заполнен, в нем мусор.
0
L1oN
2 / 2 / 1
Регистрация: 25.03.2015
Сообщений: 63
05.10.2015, 21:55  [ТС] 3
Это должны быть одномерные массивы.
А как убрать этот мусор? Где ошибка?

Добавлено через 1 час 4 минуты
TotalSize - Not all control paths return a value. Скорее всего ошибка из-за того что эта функция не возвращает значение, но что не так?
0
zss
Модератор
Эксперт С++
7460 / 6836 / 4317
Регистрация: 18.12.2011
Сообщений: 18,086
Завершенные тесты: 1
05.10.2015, 22:03 4
Цитата Сообщение от L1oN Посмотреть сообщение
А как убрать этот мусор?
Что-нибудь в него записать.
0
nmcf
6500 / 5735 / 2611
Регистрация: 14.04.2014
Сообщений: 24,455
05.10.2015, 22:04 5
Ну заполняй чем-то массив. Для чего он вообще предназначен?
C++
1
2
3
4
5
6
int TotalSize(int *size,int n)
{
    for (int sum(0),i=0;i<n;i++) sum+=size[i];
 
    return sum;
}
0
pav1uxa
1857 / 1711 / 802
Регистрация: 23.01.2014
Сообщений: 6,082
Завершенные тесты: 1
05.10.2015, 22:20 6
Цитата Сообщение от L1oN Посмотреть сообщение
C++
1
2
int *resultarray = new int[totalsize = TotalSize(size,num)];
delete resultarray;
И тут наверное delete[] все же лучше смотрится.
0
05.10.2015, 22:20
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
05.10.2015, 22:20

Организовать список объектов и сортировку списка
Помогите пожалуйста написать программу.Вот само задание: Организовать список...

В динамическом массиве организовать двунаправленную экстремумную сортировку
в динамическом массиве организовать двунаправленную экстремумную сортировку....

Как ускорить сортировку массива?
Всем привет есть задача по сортировке массива ,я её решил на 71.43%. Помогите...


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

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

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