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

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

Войти
Регистрация
Восстановить пароль
 
Suarez777
0 / 0 / 0
Регистрация: 24.03.2013
Сообщений: 66
#1

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

15.05.2013, 15:49. Просмотров 574. Ответов 3
Метки нет (Все метки)

Дано некоторое слово. Написать функцию, которая возвращает слово, полученное из исходного в результате сдвига его элементов вправо на один символ (последний элемент при этом перемещается на место первого). (3 балла)
Пример:

Вход: "shift"
Выход: "tshif"
0
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
15.05.2013, 15:49
Здравствуйте! Я подобрал для вас темы с ответами на вопрос Сдвиг элементов вправо на один символ (C++):

Написать код,чтобы при нажатии клавиши D и d был сдвиг курсора на один символ вправо - C++
Написать код,чтобы при нажатии клавиши D и d был сдвиг курсора на один символ вправо,а при нажатии А и а,по аналогии влево. #include...

Сдвиг на один символ - C++
Здравствуйте. у меня не получается решить такую задачку: есть последовательность символов, например: 'aaaabbbbccccdddd' мне...

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

Осуществить циклический сдвиг элементов в матрице на k элементов вправо или вниз - C++
Осуществить циклический сдвиг элементов в мат-це на k элементов вправо или вниз (в зависимости от введенного режима). Число k может быть...

Дано одномерный массив Х, размером 15 элементов. Провести циклический сдвиг элементов в массиве вправо на 2 позиции - C++
Дано одномерный массив Х, размером 15 элементов. Провести циклический сдвиг элементов в массиве вправо на 2 позиции.

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

Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
nexen
187 / 180 / 3
Регистрация: 27.01.2012
Сообщений: 1,335
15.05.2013, 15:51 #2
Suarez777, всё просто. Запоминаете последний символ в переменную. Пробегаетесь по массиву до конца, перезаписывая так: str[i + 1] = str[i] до "length(str)-1"-го символа, а затем в str[0] записываете сохраненный последний символ.

Вырезка из кода:
C++
1
2
3
4
5
6
7
int length = strlen(str);
char t = str[length - 1];
for (int i = 0; i < length - 1; ++i)
{
str[i + 1] = str[i];
}
str[0] = t;
1
Suarez777
0 / 0 / 0
Регистрация: 24.03.2013
Сообщений: 66
15.05.2013, 15:54  [ТС] #3
с++ для меня- дремучий лес((
0
nexen
187 / 180 / 3
Регистрация: 27.01.2012
Сообщений: 1,335
15.05.2013, 16:00 #4
Suarez777, ну тогда зачем вам нужно решать эти задачи? Если это задание в универе/школе, то вы явно выбрали не ту профессию.

C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
#include <stdio.h>
#include <string.h>
 
void main()
{
char str[100];
printf("Enter string:\n");
scanf("%s", str);
int length = strlen(str);
char t = str[length - 1];
for (int i = 0; i < length - 1; ++i)
{
str[i + 1] = str[i];
}
str[0] = t;
printf("Shifted string: %s", str);
}
0
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
15.05.2013, 16:00
Привет! Вот еще темы с ответами:

Осуществить сдвиг влево/ вправо элементов - C++
Разработать подпрограммы (функции или процедуры) для следующих алгоритмов над массивом. Входным параметром подпрограмм является...

Циклический сдвиг прямоугольной матрицы на n элементов вправо - C++
Подскажите пожалуйста в чем ошибка. Надо осуществить циклический сдвиг прямоугольной матрицы на n элементов вправо. int main() { ...

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

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


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

Или воспользуйтесь поиском по форуму:
Yandex
Объявления
15.05.2013, 16:00
Ответ Создать тему
Опции темы

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