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

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

Войти
Регистрация
Восстановить пароль
 
Super GT
4 / 4 / 0
Регистрация: 23.12.2012
Сообщений: 131
#1

Вставка символов - C++

15.10.2013, 21:39. Просмотров 330. Ответов 1
Метки нет (Все метки)

"Дана строка. Если в ней попадается строчный символ - с обоих сторон от него вставить его же в верхнем регистре."

Я решительно не могу понять, как все это выглядит. Вернее, ясно, что для вставки символа нужно всю строку сдвинуть на одну позицию. Но вот с реализацией проблемы, никак не могу все это вместе соединить. И да, делать просто через цикл, без классов, конкатенации и пр.

Что получилось:
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
main()
{
      int i, j;
      char str[] = "";
        cout << "Stroka: ";
        gets(str); 
 
   for (i = 0; i < strlen(str); i++) //анализ введенной строки по элементно
     {
         if (int(str[i]) >= 90 && int(str[i]) <= 122) //условие - соответствует ли код символа прописному
         {
           //цикл для вставки символа слева
            for (j = strlen(str); j < (strlen(str)+1); j--)
              { 
                 str[j+1] = str[i];
                 str[j] = char(int(str[i-32])); //переход в "верхний" аналог обрабатываемого символа
                 str[j+2] = char(int(str[i-32]));
              }
 
          }
     }
      
cout << "Otvet: " << str << "\n";
system("pause");
return 0; 
}
Код, к сожалению, кривой, и не работает. Буду рад, если кто подправит и/или предложит более простой вариант.
0
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
15.10.2013, 21:39
Здравствуйте! Я подобрал для вас темы с ответами на вопрос Вставка символов (C++):

С++. Вставка символов/пробелов - C++
Здравствуйте, только начинаю программировать в С++, работаю со строками. Подскажите, пожалуйста, как реализуется вставка в строку...

Преобразовать заданные строки, согласно условию (сортировка и сравнение строк, вставка/удаление символов) - C++
Даны строки A и B. Если все символы A входят в B и в B есть повторяющиеся символы, то упорядочить символы B в порядке, обратном к...

Как настроить ввод русских символов и в дальнейшем вывод этих символов - C++
Подскажите как в этом коде настроить ввод русских символов и в дальнейшем вывод этих символов. Данный код выводит лишь всякую ерунду место...

Дана строка символов. Подсчитать общее число вхождений символов .,+ в строку - C++
Здравствуйте. Дана строка символов. Подсчитать общее число вхождений символов .,+ в строку. Как такую программу сделать? Заранее спасибо за...

Введите массив символов из 12 элементов. Удвоить все коды символов массива - C++
Условие :Введите массив символов из 12 элементов. Удвоить все коды символов массива. Заранее спасибо )

В строке символов найти максимальную подпоследовательность символов, являющуюся палиндромом - C++
Народ, помогите пожалуйста. Нужно написать программу, используя динамический массив. Вот условие задачи: В строке символов найти...

Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
rangerx
1933 / 1542 / 141
Регистрация: 31.05.2009
Сообщений: 2,912
16.10.2013, 00:35 #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
#include <cstring>
#include <cstddef>
#include <cctype>
#include <iostream>
 
int main()
{    
  using namespace std;
 
  char s[31];
  cout << "Input string:\n";
  cin.getline(s, 11);
 
  size_t n = strlen(s);
  size_t i = 0;
  while(i < n)
  {
    if(islower(s[i]))
    {
      n += 2;
      for(size_t j = n; j > i + 2; --j)
        s[j] = s[j - 2];
      s[i + 1] = s[i];
      s[i] = s[i + 2] = toupper(s[i]);
      i += 3;
    }
    else
    {
      ++i;
    }
  }
 
  cout << s << '\n';
}
1
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
16.10.2013, 00:35
Привет! Вот еще темы с ответами:

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

Дан текст, содержащий 30 символов. Подсчитать количество вхождений символов А и Б. - C++
Ребят , помогите плиз , послезавтра экзамен , вот нашел возможные задание , может кто подсказать , или показать решения ? Язык : С++/...

В заданном массиве символов, определить, сколько символов предшествует заданному - C++
Дан массив символов, среди которых есть символ двоеточие &quot;:&quot;. Определить, сколько символов ему предшествует

Ошибка ввода символов строки, при количестве символов кратных 8 - C++
Здравствуйте, уважаемые форумчане! Разбираясь с механизмом ввода и динамическим выделением памяти для строк решил написать такой...


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

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

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