0 / 0 / 0
Регистрация: 08.10.2014
Сообщений: 15
1

Динамическое распределение памяти

09.12.2014, 13:46. Показов 944. Ответов 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
67
#include <iostream>
#include <time.h>
#include <clocale>
#include <stdlib.h>
 
using namespace std;
 
const int N=5;
 
int main() 
{
    setlocale(LC_CTYPE,"rus");
 
    cout<<"Исходный массив:"<<endl;
 
    int mas[N] ;
 
    int x ,i; 
 
    for (i=0; i<N ; i++){
        cout << "Array["<<i<<"]=" ;
        cin >> mas[i] ; }
 
    int j;
    for(int i=1;i<N;i++)
    {   x=mas[i];
        j=i;
         while((j>1) && (x<mas[j-1]))
         {
             mas[j]=mas[j-1];
             j--;
         }
         mas[j]=x;
    }
 
    cout<<endl<<"Сортировка массива вставками (a):"<<endl;
    for(int i=0;i<N;i++)
    {
        cout<<mas[i]<<" ";
    }
 
 
 
 
    int k;
    for(int i=1;i<N;i++)
    {   x=mas[i];
        k=i;
         while((k>1) &&(x>mas[k-1]))
         {
             mas[k]=mas[k-1];
             k--;
         }
         mas[k]=x;
    }
  
    cout<<endl<<"Сортировка массива вставками (b):"<<endl;
    for(int i=0;i<N;i++)
    {
        cout<<mas[i]<<" ";
    }
 
 
    cout<<endl ;
    system ("pause") ;
    return 0;
}
__________________
Помощь в написании контрольных, курсовых и дипломных работ, диссертаций здесь
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
09.12.2014, 13:46
Ответы с готовыми решениями:

Распределение памяти. Динамическое выделение памяти
an-1 an-2 ... a2

Динамическое распределение памяти
Столкнулся со следующей задачей: Создать список, элементами которого являются целые числа. Данные...

Динамическое распределение памяти
Добрый вечер! Помогите пожалуйста! Поставлена такая задача: Разработать программу, которая в...

Динамическое распределение памяти С++
Задание: Создать 3 динамических переменных разного типа. Заполнить их некоторыми значениями....

2
91 / 74 / 81
Регистрация: 07.12.2014
Сообщений: 303
09.12.2014, 14:42 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
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
#include <iostream>
#include <time.h>
#include <clocale>
#include <stdlib.h>
#include <iomanip>
using namespace std;
 
int N;
void get(int *mas)
{
    for (int i = 0; i<N; i++)
    {
        cout << "Array[" << i << "]=";
        cin >> mas[i];
    }
 
}
void put(int *mas)
{
    for (int i = 0; i<N; i++)
    {
        cout << mas[i] << setw(5);
    }
 
}
void sort1(int *mas)
{
    int x, i;
    int j;
    for (int i = 0; i<N; i++)
    {
        x = mas[i];
        j = i;
        while ((j>0) && (x<mas[j - 1]))
        {
            mas[j] = mas[j - 1];
            j--;
        }
        mas[j] = x;
    }
}
void sort2(int *mas)
{
    int x, i;
    int j;
    int k;
    for (int i = 0; i<N; i++)
    {
        x = mas[i];
        k = i;
        while ((k>0) && (x>mas[k - 1]))
        {
            mas[k] = mas[k - 1];
            k--;
        }
        mas[k] = x;
    }
}
int main()
{
    setlocale(LC_CTYPE, "rus");
    cout << "Введи необходимое количество элементов:" << endl;
    cin >> N;
    int *mas=new int [N];
    
    get(mas);
 
    cout << "Исходный массив:" << endl;
    put(mas);
 
    
    cout << endl << "Сортировка массива вставками (a):" << endl;
    sort1(mas);
    put(mas);
    
    cout << endl << "Сортировка массива вставками (b):" << endl;
    sort2(mas);
    put(mas);
 
 
    cout << endl;
    system("pause");
    return 0;
}
1
0 / 0 / 0
Регистрация: 08.10.2014
Сообщений: 15
13.12.2014, 08:31  [ТС] 3
olgashat , очень благодарен спс
0
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
13.12.2014, 08:31
Помогаю со студенческими работами здесь

Динамическое распределение памяти
Добрый вечер, помогите пожалуйста разобраться с задачкой!!! Дана действительная квадратная матрица...

Динамическое распределение памяти
Помогите,пожалуйста) - расширьте функционал программы за счет возможности введения с клавиатуры...

Динамическое распределение памяти
Ни разу не работал с динамическим распределением. Объясните пжл, что я сделал не так. Цель -...

Динамическое распределение памяти.
#include&lt;stdio.h&gt; #include&lt;stdlib.h&gt; int bespor(int *ptr); void main(void){ int...


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

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

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2022, CyberForum.ru