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

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

Войти
Регистрация
Восстановить пароль
 
Рейтинг: Рейтинг темы: голосов - 13, средняя оценка - 4.85
insi
Сообщений: n/a
#1

Символы и строки. - C++

14.05.2008, 21:11. Просмотров 1595. Ответов 9
Метки нет (Все метки)

Помогите пожалуйста с решением задачи.

Вводится последовательность символов. Формировать новую строку, состоящую из символов исходной строки, в которой вначале идут символы с нечетными значениями кодов, а потом с четными.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
14.05.2008, 21:11     Символы и строки.
Посмотрите здесь:

Строки/Символы на С C++
C++ Строки и символы в С++
Символы и строки C++
C++ Строки и символы!
C++ Строки и символы C++
Строки и символы. C++ C++
Удалить символы из строки C++
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
Alirp
55 / 50 / 1
Регистрация: 04.05.2008
Сообщений: 273
15.05.2008, 09:00     Символы и строки. #2
Можно два раза пробежаться по всему массиву символов в цикле деля код каждого символа на 2, если есть остаток, то нечетные значения кода, записываем их в начало строки, затем проходимся второй раз и если остатка нет (четные значения кода) записываем в конец строки.
MsDos
5 / 5 / 1
Регистрация: 13.05.2008
Сообщений: 91
15.05.2008, 09:55     Символы и строки. #3
Alirp, можно же ведь оптимизировать и сразу, если остатка, писать в конец массива. что-то типа:
switch(код символа/2):
case(есть остаток) в начало;
case(нет остатка) в конец;
Alirp
55 / 50 / 1
Регистрация: 04.05.2008
Сообщений: 273
15.05.2008, 10:12     Символы и строки. #4
Цитата Сообщение от MsDos Посмотреть сообщение
Alirp, можно же ведь оптимизировать и сразу, если остатка, писать в конец массива. что-то типа:
switch(код символа/2):
case(есть остаток) в начало;
case(нет остатка) в конец;
Можно и сразу только использовать не switch а массив и условные операторы, что то типа:
for (int i = 0; i < количества символов; i++) {
int ost = (int) fmod (код символа, 2);
if (ost == 0) //Остатка нет
запись в начало;
else //Остаток есть
запись в конец;
}
MsDos
5 / 5 / 1
Регистрация: 13.05.2008
Сообщений: 91
15.05.2008, 10:21     Символы и строки. #5
Alirp, хехе
если бы при делении на 2 могло быть еще какое-нибудь состояние, кроме существования остатка и его отсутствие, то в switch надо было бы всего лишь добавить один case, а с ифами пришлось бы еще возиться
Alirp
55 / 50 / 1
Регистрация: 04.05.2008
Сообщений: 273
15.05.2008, 10:27     Символы и строки. #6
Цитата Сообщение от MsDos Посмотреть сообщение
Alirp, хехе
если бы при делении на 2 могло быть еще какое-нибудь состояние, кроме существования остатка и его отсутствие, то в switch надо было бы всего лишь добавить один case, а с ифами пришлось бы еще возиться
Не какой возни с ифами я не вижу, если надо, то можно добавить else if (условие)
MsDos
5 / 5 / 1
Регистрация: 13.05.2008
Сообщений: 91
15.05.2008, 10:35     Символы и строки. #7
Alirp, краткость - сестра таланта(с)ч
добавить 'case();'
или
'else if()'
хоть и небольшая, но разница + меньше фактического кода облегчает понимание

Добавлено через 2 минуты
зы не призываю, конечно, немедленно переходить на свитч, просто есть такое предпочтение
Alirp
55 / 50 / 1
Регистрация: 04.05.2008
Сообщений: 273
15.05.2008, 10:38     Символы и строки. #8
Я использую switch когда много проверок, тогда действительно if не катит, но когда надо произвести две или три проверки, то лучше использовать ифы, а на счет кратости, кроме case надо еще добавлять еще и break так что не известно, что короче.
MsDos
5 / 5 / 1
Регистрация: 13.05.2008
Сообщений: 91
15.05.2008, 10:43     Символы и строки. #9
Alirp, ох, ну, да, точно..
insi, пишите через ифы ))
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
16.05.2008, 00:17     Символы и строки.
Еще ссылки по теме:

C++ строки символы с++
Проверка строки на символы C++
C++ Строки и символы
C++ Строки и символы
C++ Задача на строки и символы

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

Или воспользуйтесь поиском по форуму:
insi
Сообщений: n/a
16.05.2008, 00:17     Символы и строки. #10
Спасибо за инфу, попробую теперь разобраться
Yandex
Объявления
16.05.2008, 00:17     Символы и строки.
Ответ Создать тему
Опции темы

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