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

Срез массива

18.10.2020, 14:10. Показов 3460. Ответов 1
Метки нет (Все метки)

Помогите, пожалуйста, с программой, даже условие не могу понять, прошу хотя-бы натолкнуть на мысль

Условие
Напишите функцию, которая как результат будет возвращать подпоследовательность элементов массива, начиная с позиции X до позиции Y включительно в обратном порядке с шагом Z как новый массив. По умолчанию шаг должен быть равен 1.

Ваша задача для заданного массива вывести срез с шагом 1 и с шагом, заданным с клавиатуры.

Формат входных данных
В первой строке задается натурально число N, (N ≤ 10000)- размер массива.

В следующей строке вводятся N целых чисел, по модулю не превосходящих 109 - элементы массива.

В последней строке вводятся три целых числа X, Y и Z (0 ≤ X ≤ Y < N, 0 < Z < N)- границы и шаг среза соответственно.

Формат выходных данных
В первой строке выведите перевернутый фрагмент массива с шагом 1.

Во второй строке выведите перевернутый фрагмент массива с шагом Z.
__________________
Помощь в написании контрольных, курсовых и дипломных работ, диссертаций здесь
0
Лучшие ответы (1)
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
18.10.2020, 14:10
Ответы с готовыми решениями:

Срез массива
Мне нужно задать шаг 4*i + 1 в срезе массива, как это сделать? Вот такой вот пример: прикреплю в...

Заполнить срез трехмерного массива
Добрый день. Нужно заполнить срез 3д матрицы (см. вложения, там есть картинка). Все...

Функция которая делает срез вектора
здравствуйте подскажите с решением Написать ф-цию vector&lt;int&gt; slice(vector&lt;int&gt; v, int from, int...

Срез массива array_slice
Добрый вечер. Изначально ассоциативный массив $a и его размер неизвестны, но для примера напишем...

1
4 / 3 / 1
Регистрация: 26.04.2020
Сообщений: 12
18.10.2020, 14:14 2
Лучший ответ Сообщение было отмечено mismas как решение

Решение

Держи
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
#include <iostream>
#include <vector>
 
using namespace std;
 
void srez(vector<int> arr, int x, int y, int z = 1) {
    for (int i = y; i >= x; i -= z) {
        cout << arr[i] << ' ';
    }
    cout << '\n';
}
 
int main() {
    int n;
    cin >> n;
    vector<int> arr(n);
    for (int i = 0; i < n; ++i) cin >> arr[i];
    int x, y, z;
    cin >> x >> y >> z;
    srez(arr, x, y);
    srez(arr, x, y, z);
    return 0;
}
2
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
18.10.2020, 14:14
Помогаю со студенческими работами здесь

Срез массива в переменную
Не могу взять срез массива в переменную, но при этом срез массива вывести могу Подскажите, в чем...

Наибольший возрастающий срез массива
Здравствуйте, помогите решить задачу(можно на java, pascal,C или C++) Дано натуральное число N,...

Не получается сделать срез массива
Всем добрый день. Есть таблица со следующими колонками (про название колонок замечания прошу не...

Срез
b=&quot;asdfghjkl&quot; b Выдаст=s Как он так отрезает?

Срез Последних
Здравствуйте. Пытаюсь создать конфигурацию для отеля. Нужно в отчет выводить дату бронирования...

Не выводит срез
У меня не почему-то не выводит срез((( a, b, k = map(int, input().split()) ab = str(a / b) for...


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

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

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