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

Расположить элементы в новом массиве в заданном порядке

21.05.2016, 18:23. Просмотров 189. Ответов 7
Метки нет (Все метки)

Даны действительные числа a1...a20. получить новый массив, в котором числа нового массива следуют в данном порядке: a20, a11,a19,a10,...,a11,a2,a10,a1

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

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

Расположить элементы первой половины одномерного массива в порядке возрастания, а второй - в порядке убывания
Нужно расположить элементы первой половины одномерного массива в порядке...

Расположить элементы массива в порядке возрастания
Дан массив a. Расположить его элементы в порядке возрастания. Использовать...

Расположить элементы массива в порядке убывания
ввести массив . состоящий из 12 элементов действительного типа . расположить...

Расположить элементы стека в обратном порядке
Разработать консольное приложение, которое с помощью абстрактной структуры...

Расположить в массиве числа в порядке убывания частоты встречаемости чисел
У меня задание: Расположить в массиве числа в порядке убывания частоты...

7
nds3
0 / 0 / 0
Регистрация: 21.05.2016
Сообщений: 9
21.05.2016, 18:48 2
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
#include<iostream>
using namespace std;
 
int main()
{
    int mass1[20];
    int mass2[20];
    for (int i = 0; i < 20; i++) { mass1[i] = i; }
    for (int k = 19; k >= 0; k--) { mass2[k] = mass1[19 - k]; }
    for (int i = 0; i < 20; i++) { cout << mass1[i] << ' '; }
    cout << endl;
    for (int i = 0; i < 20; i++) { cout << mass2[i]<<' '; }
    cout << endl;
    system("pause");
    return 0;
}
0
zss
Модератор
Эксперт С++
7460 / 6836 / 4317
Регистрация: 18.12.2011
Сообщений: 18,086
Завершенные тесты: 1
21.05.2016, 18:52 3
nds3, Вы просто перевернули массив. А надо чередование первой половины массива со второй
a20, a11,a19,a10,...
0
nds3
0 / 0 / 0
Регистрация: 21.05.2016
Сообщений: 9
21.05.2016, 18:58 4
в 9 строчке кода поменяйте mass2 на mass1 и посмотрите результат
0
zss
Модератор
Эксперт С++
7460 / 6836 / 4317
Регистрация: 18.12.2011
Сообщений: 18,086
Завершенные тесты: 1
21.05.2016, 19:14 5
Цитата Сообщение от nds3 Посмотреть сообщение
поменяйте mass2 на mass1 и посмотрите результат
Посмотреть, конечно, можно:
Расположить элементы в новом массиве в заданном порядке
0
nds3
0 / 0 / 0
Регистрация: 21.05.2016
Сообщений: 9
21.05.2016, 19:21 6
я не сразу понял задание, да у меня не так получается
0
Fixer_84
1204 / 752 / 712
Регистрация: 30.04.2016
Сообщений: 2,503
22.05.2016, 00:39 7
SantaStanta, держите код программы.

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
#include <iostream>
#include <cmath>
 
using namespace std;
 
int main()
{
const int N = 20;
double A[N], B[N+2];
int k, p;
cout << "Введите массив:" << endl;
for (int i = 0; i < N; i++)
{
cin >> A[i];
}
k = 0;
p = 1;
for (int i = N - 1; i >= N / 2 - 1; i--)
{
B[k] = A[i];
B[p] = A[i-9];
k += 2;
p += 2;
}
cout << "Искомый массив:" << endl;
for (int i = 0; i < N + 2; i++)
{
cout << B[i] << " ";
}
cout << endl;
system("pause");
return 0;   
}
Добавлено через 8 минут
Или все-таки так?

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
#include <iostream>
#include <cmath>
 
using namespace std;
 
int main()
{
const int N = 20;
double A[N], B[N];
int k, p;
cout << "Введите массив:" << endl;
for (int i = 0; i < N; i++)
{
cin >> A[i];
}
k = 0;
p = 1;
for (int i = N - 1; i >= N / 2; i--)
{
B[k] = A[i];
B[p] = A[i - N / 2];
k += 2;
p += 2;
}
cout << "Искомый массив:" << endl;
for (int i = 0; i < N; i++)
{
cout << B[i] << " ";
}
cout << endl;
system("pause");
return 0;   
}
Добавлено через 5 минут
SantaStanta, вы задали индексы элементов в стиле Pascal. Меня сбило это с толку...Второй вариант программы, кажется, то что нужно

Добавлено через 21 минуту
SantaStanta, судя по количеству чисел, их 20, но вывести нужно 11 пар по 2 (то есть 20, 11 ... 10, 1), правильно? Тогда получается так:

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
#include <iostream>
#include <cmath>
 
using namespace std;
 
int main()
{
const int N = 20;
double A[N], B[N+2];
int k, p;
cout << "Введите массив:" << endl;
for (int i = 0; i < N; i++)
{
cin >> A[i];
}
k = 0;
p = 1;
for (int i = N - 1; i >= N / 2 - 1; i--)
{
B[k] = A[i];
B[p] = A[i - N / 2 + 1];
k += 2;
p += 2;
}
cout << "Искомый массив:" << endl;
for (int i = 0; i < N + 2; i++)
{
cout << B[i] << " ";
}
cout << endl;
system("pause");
return 0;   
}
Добавлено через 2 минуты
SantaStanta, последний вариант то, что вам нужно.
0
SantaStanta
0 / 0 / 0
Регистрация: 06.07.2015
Сообщений: 9
22.05.2016, 00:44  [ТС] 8
В принципе и 1 вариант работает как надо. Спасибо за помошь.
0
22.05.2016, 00:44
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
22.05.2016, 00:44

Элементы заданного массива T(k) расположить в обратном порядке: t k,t k-1,.,t2,t1
Элементы заданного массива T(k) расположить в обратном порядке: t k,t...

Элементы заданного массива T(k) расположить в обратном порядке: t k,t k-1,.,t2,t1
Элементы заданного массива T(k) расположить в обратном порядке: t k,t...

Ненулевые элементы массива расположить в обратном порядке
написать программу на языке с++, у которой операторы: 1) создают одномерный...


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

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

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