С Новым годом! Форум программистов, компьютерный форум, киберфорум
С++ для начинающих
Войти
Регистрация
Восстановить пароль
Карта форума Темы раздела Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.73/11: Рейтинг темы: голосов - 11, средняя оценка - 4.73
0 / 0 / 0
Регистрация: 11.09.2019
Сообщений: 2
1

Циклический сдвиг массива

11.09.2019, 00:24. Показов 1950. Ответов 2

Author24 — интернет-сервис помощи студентам
Дан массив a из n элементов. Перенесите первый элемент массива на место k-го элемента. При этом второй, третий, ... , k-й элементы сдвинуть влево на 1 позицию.

Формат входных данных
С клавиатуры вводится натуральное число n (n≤100) — размер массива. Во второй строке вводятся n элементов массива через пробел. Все элементы целые и не превосходят по модулю 100. В последней строке вводится натуральное число k (1<k≤n).


входные данные
5
4 5 3 1 2
4


выходные данные
5 3 1 4 2


Все бьюсь с этой задачей, но из-за своих скромных познаний пока что результата нет
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
int n(0),k(0),temp(0),temp1(0);
    cin >> n;
    int arr[n];
    for(int i = 0;i<n;++i)cin >> arr[i];
    cin >> k;
    temp = arr[0];
    temp1 = arr[0];
    for(int i = k-1;i<k;i++)swap(arr[i],temp);
 
     for(int i = 0;i<k;i++)
    {arr[i] = arr[i+1];
    arr[k-1] = temp1;
 
        }
    for(int i = 0;i<n;++i)cout << arr[i] << " ";
 
    cout << endl;
 
 
    return 0;
0
Лучшие ответы (1)
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
11.09.2019, 00:24
Ответы с готовыми решениями:

Циклический сдвиг массива
задача: Осуществить циклический сдвиг элементов квадратной матрицы размерности MxN вправо на k...

Циклический сдвиг массива
Задание такое. Нужно циклически сдвинуть массив на К элементов вправо. Я сделал сдвиг, только он...

Циклический сдвиг массива
Здравствуйте! Поставлена такая задача: дан одномерный массив размером в 15 э-нтов. Сделать...

Циклический сдвиг массива
Здравствуйте,стоит задача сдвинуть массив вправо на один и влево на один. Сдвинуть массив вправо у...

2
7437 / 5029 / 2892
Регистрация: 18.12.2017
Сообщений: 15,692
11.09.2019, 00:41 2
Лучший ответ Сообщение было отмечено Maxim210 как решение

Решение

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
#include <iostream>
using namespace std;
 
int main()
{
    int n, k, temp;
    cin >> n;
 
    int*a = new int[n];
    
    for (int i = 0; i < n; i++)
      cin >> a[i];
    
    cin >> k;    
   
    temp=a[0];
    for (int i = 0; i < k-1; i++)
    a[i]=a[i+1];
    a[k-1]=temp;    
    
    for (int i = 0; i < n; i++)
    cout << a[i] << " ";
    cout << "\n";
    delete[]a;
system("pause");
return 0;
}
1
0 / 0 / 0
Регистрация: 11.09.2019
Сообщений: 2
11.09.2019, 00:47  [ТС] 3
Премного благодарен!
0
11.09.2019, 00:47
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
11.09.2019, 00:47
Помогаю со студенческими работами здесь

Циклический сдвиг массива
Никак не получается подобрать решение для сдвига циклического массива из size элементов на step...

Циклический сдвиг массива
Напишите программу, которая вводит с клавиатуры непустой массив целых чисел, циклический сдвигает...

Циклический сдвиг элементов массива
Циклический сдвиг элементов массива на k позиций влево, вправо.

Циклический сдвиг элементов массива
1. Дана матрица размера 5 x 10. Вывести номер ее первой1|последней2 строки3|столбца4, содержащего...


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

Или воспользуйтесь поиском по форуму:
3
Ответ Создать тему
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2025, CyberForum.ru