Форум программистов, компьютерный форум, киберфорум
Наши страницы

С++ для начинающих

Войти
Регистрация
Восстановить пароль
 
silverserfer
-123 / 0 / 0
Регистрация: 12.10.2012
Сообщений: 12
#1

Сдвиг элементов массива вправо на ону позицию - C++

12.10.2012, 19:33. Просмотров 777. Ответов 7
Метки нет (Все метки)

Реализовать программу , осуществляющую сдвиг элементов массива вправо на ону позицию. Не могу составить алгоритм для программы.
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
12.10.2012, 19:33
Я подобрал для вас темы с готовыми решениями и ответами на вопрос Сдвиг элементов массива вправо на ону позицию (C++):

Осуществить циклический сдвиг элементов массива вправо на одну позицию - C++
4Дан массив размера N. Осуществить циклический сдвиг элементов массива вправо на одну позицию (при этом A 1 перейдет в A 2 , A 2 — в A 3 ,...

Сдвиг элементов массива вправо - C++
Добрый вечер всем. У меня возник такой вопрос. Можно ли сдвинуть элементы массива вправо на одну позицию, при это цикл начинать не с...

Циклический сдвиг элементов массива вправо на К позиций - C++
Дан массив размера N и число К (0<k<5, K<n) Осуществить циклический сдвиг элементов массива вправо на К позиций .

Сдвиг элементов массива циклически на a позиций вправо - C++
Применять можно только статические одномерные массивы, циклы и if. Вроде бы всё правильно, но цикл for (j=2; j>0; j--) бесконечно...

Произвести циклический сдвиг вправо элементов массива - C++
Люди в Си++ дуб дубом. Помагите очень надо. Вот текст задачи. Ввести одномерный целочисленный массив A, вывести его. Произвести...

Осуществить сдвиг элементов массива вправо на k позиций - C++
Всем привет , помогите пожалуйста решить эту задачу на языке Си 9. Дан целочисленный массив размера N. Осуществить сдвиг вправо на k...

7
soon
2545 / 1310 / 81
Регистрация: 09.05.2011
Сообщений: 3,086
Записей в блоге: 1
12.10.2012, 19:37 #2
http://en.cppreference.com/w/cpp/algorithm/rotate
0
silverserfer
-123 / 0 / 0
Регистрация: 12.10.2012
Сообщений: 12
12.10.2012, 19:39  [ТС] #3
дело в том что мне нельзя пользоваться такими командами как std::swap все сам типа должен сделать!
0
Кот Ангенс
318 / 268 / 38
Регистрация: 24.05.2012
Сообщений: 629
12.10.2012, 19:39 #4
C++
1
2
3
4
5
6
7
template <typename T>
void ShiftRight(T a[ ], unsigned n) {
    T temp = a[n - 1];
    for (unsigned i = 1; i < n; i++)
        a[i] = a[i - 1];
    a[0] = temp;
}
0
soon
2545 / 1310 / 81
Регистрация: 09.05.2011
Сообщений: 3,086
Записей в блоге: 1
12.10.2012, 19:41 #5
silverserfer, напиши аналог, проблем-то.
0
silverserfer
-123 / 0 / 0
Регистрация: 12.10.2012
Сообщений: 12
12.10.2012, 19:41  [ТС] #6
Цитата Сообщение от Кот Ангенс Посмотреть сообщение
C++
1
2
3
4
5
6
7
template <typename T>
void ShiftRight(T a[ ], unsigned n) {
    T temp = a[n - 1];
    for (unsigned i = 1; i < n; i++)
        a[i] = a[i - 1];
    a[0] = temp;
}
мне алгоритм нужен программы, не сам код
0
Кот Ангенс
318 / 268 / 38
Регистрация: 24.05.2012
Сообщений: 629
12.10.2012, 19:44 #7
Ошибочка, вот верный код:
C++
1
2
3
4
5
6
7
template <typename T>
void ShiftRight(T a[ ], unsigned n) {
    T temp = a[n - 1];//Записать последний элемент
    while (--n)//Пройтись по всему массиву, кроме первого элемента, с конца
        a[n] = a[n - 1];//Записать в выбранный элемент значение предыдущего
    a[0] = temp;//Задать первый равным последнему
}
0
silverserfer
-123 / 0 / 0
Регистрация: 12.10.2012
Сообщений: 12
12.10.2012, 20:29  [ТС] #8
Цитата Сообщение от soon Посмотреть сообщение
silverserfer, напиши аналог, проблем-то.
поможешь написать аналог? со стандартными командами, так сказать простыми командами самыми?

Добавлено через 44 минуты
Всем спасибо, нашел свою ошибку и все сделал.
0
12.10.2012, 20:29
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
12.10.2012, 20:29
Привет! Вот еще темы с ответами:

Цикличиский сдвиг элементов массива вправо на k позиций - C++
Дан массив размера N ≥ 2 и число k (0 &lt; k &lt; N). Осуществить циклический сдвиг элементов массива вправо на k позиций. Input Первая...

Осуществить циклический сдвиг элементов массива вправо на k позиций - C++
Решаю задачи на сервере одном, задание было &quot;Дан массив размера N ≥ 2 и число k (0 &lt; k &lt; N). Осуществить циклический сдвиг элементов...

Циклический сдвиг четных строк двумерного массива на k элементов вправо - C++
Помогите, как организовать циклический сдвиг на k элементов вправо? #include &lt;iostream&gt; #include &lt;vector&gt; #include &lt;clocale&gt;...

Осуществить циклический сдвиг элементов массива влево на одну позицию - C++
Помогите, пожалуйста, решить программы на си++, если не решу мне хана, заранее спасибо: Дан массив размера N. Осуществить циклический...


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

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

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