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

Организовать новый массив по условию, отсортировать методом обменов

21.05.2017, 18:01. Просмотров 386. Ответов 3
Метки нет (Все метки)

Дан одномерный целочисленный массив B. Организовать новый массив A=B, если B>0, иначе при B<=0, A=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
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
#include <iostream>
#include <conio.h>
#include <math.h>
#include <ctime>
#include <fstream>
using namespace std;
void MassivB(int n, double *B)
{
    for (int i=0; i<n; i++)
    {
        B[i] = 50-rand() % 100;
        cout << "B["<<i<<"]=" << B[i] << endl;
    }
}
void MassivA(int n, double *A, double *B)
{
    for (int i=0; i<n; i++)
    {
        if (B<=0)
        {
        A=0;
        cout << "A["<<i<<"]=" << A[i] << endl;
        }
        else
        {
            A=B;
            cout << "A["<<i<<"]=" << A[i] << endl;
        }
    }
}
 
void sort(double A, int n)
{
    int last=n; bool ok;
    do
    {
        last=last-1;
        ok=true;
        for(int i=0; i<last; i++)
        {
            if(A[i]>A[i+1])
            {
                int x=A[i];
                A[i]=A[i+1];
                A[i+1]=x;
                ok=false;
            }
        }
    }
    while(!ok);
}
void Excel(int n, double *B, double *A)
{
    ofstream f("Massiv.csv");
    for (int i=0; i<n; i++)
        {
            f << "B["<<i<<"]=" << B[i] << endl;
            f << "A["<<i<<"]=" << A[i] << endl;
            f.close();
        }
}
int main()
{
setlocale(0, "");
double n,*B,*A;
cout << "Введите размерность массива:" << endl;
cin >> n;
B = new double[n];
MassivB(n, B);
A = new double[n];
MassivA(n, A, B);
Excel(n, B, A);
delete B;
delete A;
getch();
return 0;
}
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
21.05.2017, 18:01
Ответы с готовыми решениями:

Отсортировать массив по не убыванию методом обменов рядом стоящих элементов
Отсортировать массив по не убыванию методом обменов рядом стоящих элементов с минимально...

Отсортировать массив по не убыванию методом обменов рядом стоящих элементов с минимально необходимым числом
Заданы от одного до трех числовых массивов. Составить программу, которая вводит и печатает исходные...

Упорядочить одномерный числовой массив методом по возрастанию обменов
1. Упорядочить одномерный числовой массив методом по возрастанию обменов. При этом сравниваются два...

Отсортировать массив методом выбора, методом вставки и методом Хоара
Задан двумерный массив.Получить одномерный массив, состоящий из минимальных элементов строк...

3
Рэмбо комнатный
99 / 99 / 99
Регистрация: 05.03.2017
Сообщений: 506
21.05.2017, 20:37 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
#include <iostream>
 
using namespace std;
 
void Init(int *arr, const int n)
{
    for (int i = 0; i < n; i++)
    {
        cin >> arr[i];
    }
}
 
void Print(int *arr, const int n)
{
    cout << "Mass: " << endl;
    for (int i = 0; i < n; i++)
    {
        cin >> arr[i];
    }
    cout << endl;
}
 
void Convert(int *arr, const int n)
{
    int *a = new int[n];
    for (int i = 0; i < n; i++)
    {
        if (arr[i] > 0)
        {
            a[i] = arr[i];
        }
        else
        {
            a[i] = 0;
        }
    }
    Print(a, n);
    Sort(a, n);
    Print(a, n);
    delete[] a;
}
 
void Sort(int *arr, const int n)
{
    int temp;
    for (int i = 0; i < n - 1; i++)
    {
        for (int j = i + 1; j < n; j++)
        {
            if (arr[i] > arr[j])
            {
                temp = arr[i];
                arr[i] = arr[j];
                arr[j] = temp;
            }
        }
    }
}
 
int main()
{
    int n;
    cin >> n;
    int *b = new int[n];
    Init(b, n);
    Print(b, n);
    Convert(b, n);
    delete[] b;
    system("pause");
    return 0;
}
0
0 / 0 / 0
Регистрация: 12.03.2017
Сообщений: 15
21.05.2017, 20:43  [ТС] 3
Отсутствие идентификатора у Sort(a, n);
0
Рэмбо комнатный
99 / 99 / 99
Регистрация: 05.03.2017
Сообщений: 506
21.05.2017, 20:46 4
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
#include <iostream>
 
using namespace std;
 
void Init(int *arr, const int n);
void Print(int *arr, const int n);
void Convert(int *arr, const int n);
void Sort(int *arr, const int n);
 
int main()
{
    int n;
    cin >> n;
    int *b = new int[n];
    Init(b, n);
    Print(b, n);
    Convert(b, n);
    delete[] b;
    system("pause");
    return 0;
}
 
void Init(int *arr, const int n)
{
    for (int i = 0; i < n; i++)
    {
        cin >> arr[i];
    }
}
 
void Print(int *arr, const int n)
{
    cout << "Mass: " << endl;
    for (int i = 0; i < n; i++)
    {
        cin >> arr[i];
    }
    cout << endl;
}
 
void Convert(int *arr, const int n)
{
    int *a = new int[n];
    for (int i = 0; i < n; i++)
    {
        if (arr[i] > 0)
        {
            a[i] = arr[i];
        }
        else
        {
            a[i] = 0;
        }
    }
    Print(a, n);
    Sort(a, n);
    Print(a, n);
    delete[] a;
}
 
void Sort(int *arr, const int n)
{
    int temp;
    for (int i = 0; i < n - 1; i++)
    {
        for (int j = i + 1; j < n; j++)
        {
            if (arr[i] > arr[j])
            {
                temp = arr[i];
                arr[i] = arr[j];
                arr[j] = temp;
            }
        }
    }
}
0
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
21.05.2017, 20:46

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

Отсортировать по убыванию элементы массива, удовлетворяющие условию а(i) > 10, методом выбора
Сгенерировать одномерный массив ,отсортировать по убыванию элементы массива,удовлетворяющие условию...

Упорядочить одномерный числовой массив методом по возрастанию обменов. При этом сравниваются два соседних элемента массива, и если они не упорядочены,
Упорядочить одномерный числовой массив методом по возрастанию обменов. При этом сравниваются два...

Отсортировать массив методом пузырька, выполнить поиск элемента методом дихотомии
Отсортировать массив методом пузырька. Выполнить поиск элемента методом дихотомии, подсчитать...

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


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

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

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