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

перестановка n символов текста - C++

Восстановить пароль Регистрация
 
X_Duke_Nuken_X
-44 / 0 / 0
Регистрация: 01.11.2012
Сообщений: 37
23.11.2012, 14:53     перестановка n символов текста #1
Доброго времени суток! Помогите, пажалуйста, написать программу, которая переставляет n-ое количество символов (n - целое число, вводимое пользователем с клавиатуры) строки, в зависимости от знака числа n: если положительное, то берется n символов с начала строки и перестаналивается назад, если отрицательное, то берется n символов с конца строки и перестаналивается вперед.

Например: строка "abcdef" , n = 2, результат - "cdefab",
если же n = -2, результат - "efabcd"

Заранее спасибо!
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
23.11.2012, 14:53     перестановка n символов текста
Посмотрите здесь:

Дана строка текста.Определить сколько в ней символов больше . а или о C++
C++ Дана строка символов,состоящая из произвольного текста
C++ Перестановка символов строки
C++ Шифрование текста путем замены символов
Работа с файлами. Измените регистр алфавитных символов текста C++
Выбирая строку из текста, подсчитать в ней количество символов C++
C++ Выбрать из заданного текста все слова, содержащие заданную комбинацию символов
C++ Класс строка текста(хранение и извлечение символов) Стандарт C++ 2011

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

Или воспользуйтесь поиском по форуму:
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
asidorchenko
379 / 205 / 25
Регистрация: 09.04.2012
Сообщений: 635
23.11.2012, 15:40     перестановка n символов текста #2
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
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
#include <stdio.h>
#include <math.h>
 
struct string1
{
char* x;
int sz;
 
string1(int a){ x = new char[a+1]; x[a] = '\0'; sz = a;}
// вариант: откопировать в новый массив
void transform(int k)
{
 int i, l, m;
 char *y =new char[sz+1];
 y[sz] = '\0';
 if (k > 0)
 {
  for(l = k, m = 0; l < sz; l++, m++)
   y[m]= x[l];
  for(l = 0; l < k ; l++, m++)
   y[m] = x[l];
 }
 else if (k < 0)
 {
  for(l = sz - abs(k), m = 0; l < sz; l++, m++)
   y[m]= x[l];
  for(l = 0; l < sz - abs(k) ; l++, m++)
   y[m] = x[l];
 }
 
 
 for(i=0 ;i<sz;i++)
  printf("%c", y[i]);
 printf("\n");
}
 
};
 
int main()
{
string1 str(6);
 
str.x[0] = 'a';
str.x[1] = 'b';
str.x[2] = 'c';
str.x[3] = 'd';
str.x[4] = 'e';
str.x[5] = 'f';
 
str.transform(2);
str.transform(-2);
 
return 0;
}
X_Duke_Nuken_X
-44 / 0 / 0
Регистрация: 01.11.2012
Сообщений: 37
23.11.2012, 18:32  [ТС]     перестановка n символов текста #3
только дело вот в чем, строку пользователь вводит сам, а строку "abcdef" я привел просто в качестве примера.
Yandex
Объявления
23.11.2012, 18:32     перестановка n символов текста
Ответ Создать тему
Опции темы

Текущее время: 13:09. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru