Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > IT форум > Помощь студентам
Регистрация

Восстановить пароль

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 07.01.2013, 04:40   #1
NastyaYa
Новичок
Джуниор
 
Аватар для NastyaYa
 
Регистрация: 07.01.2013
Сообщений: 3
Печаль С++ строки

помогите пожалуйста.
Задана строка, состоящая из символов. Символы объединяются в слова. Слова друг от друга отделяются одним или несколькими пробелами. В конце текста ставится точка. Текст содержит не более 255 символов. Выполнить ввод строки, используя функцию cin.getline (s) и преобразовать строку таким образом, чтобы буквы каждого слова в ней были отсортированы по возрастанию.
А потом нужно сделать все то же самое,только используя класс QString

Последний раз редактировалось NastyaYa; 07.01.2013 в 04:43.
NastyaYa вне форума Ответить с цитированием
Старый 07.01.2013, 06:16   #2
Ezhik Kihze
Форумчанин
 
Регистрация: 24.12.2012
Сообщений: 639
По умолчанию

Проблема в чем? Прочитайте описания класса стринг, все ж функции есть... find, rfind, find_first_not_of,..
ICQ: 677936656 Gmail: ekEmbed@gmail.com
Ezhik Kihze вне форума Ответить с цитированием
Старый 07.01.2013, 11:36   #3
rrrFer
Санитар
Старожил
 
Аватар для rrrFer
 
Регистрация: 04.10.2008
Сообщений: 2,577
По умолчанию

Цитата:
класса стринг
ИМХО приятнее засунуть все в stringstream и считать слова оператором >> (тем паче ТС пишет что разделены они пробелами).

Отсортировать буквы, я думаю, можно sort (который из algorithm).
rrrFer вне форума Ответить с цитированием
Старый 07.01.2013, 16:04   #4
Ezhik Kihze
Форумчанин
 
Регистрация: 24.12.2012
Сообщений: 639
По умолчанию

Это учебная задача и в условии написано чем вводить.
ICQ: 677936656 Gmail: ekEmbed@gmail.com
Ezhik Kihze вне форума Ответить с цитированием
Старый 07.01.2013, 17:33   #5
rrrFer
Санитар
Старожил
 
Аватар для rrrFer
 
Регистрация: 04.10.2008
Сообщений: 2,577
По умолчанию

Цитата:
Это учебная задача и в условии написано чем вводить.
а-то я не читал. У меня в ответе тоже и написано.
читай строку getline и пиши ее в stringstream
rrrFer вне форума Ответить с цитированием
Старый 07.01.2013, 17:35   #6
NastyaYa
Новичок
Джуниор
 
Аватар для NastyaYa
 
Регистрация: 07.01.2013
Сообщений: 3
По умолчанию

основная проблема в том,что не знаю как разбить на слова строку и нормально поменять порядок
NastyaYa вне форума Ответить с цитированием
Старый 07.01.2013, 17:42   #7
rrrFer
Санитар
Старожил
 
Аватар для rrrFer
 
Регистрация: 04.10.2008
Сообщений: 2,577
По умолчанию

Код:
char s[255];
std::string str;
cin.getline(&s[0], 255);
str::stringstream sstr;
sstr << s;
while (0 == sstr.eof()) {
  sstr >> str; // считано слово
  std::sort(str.begin(), str.end(), [](char a, char b)->bool { return a < b; }); // символы слова упорядочены
}
тут могут быть опечатки и ляпы. я не проверял.
rrrFer вне форума Ответить с цитированием
Старый 07.01.2013, 17:44   #8
rrrFer
Санитар
Старожил
 
Аватар для rrrFer
 
Регистрация: 04.10.2008
Сообщений: 2,577
По умолчанию

и с QString асболютно также, тока std::string замени на QString, должно работать. Я конечно и это тоже не проверял.
rrrFer вне форума Ответить с цитированием
Старый 07.01.2013, 17:46   #9
NastyaYa
Новичок
Джуниор
 
Аватар для NastyaYa
 
Регистрация: 07.01.2013
Сообщений: 3
По умолчанию

спасибо,попробую так
NastyaYa вне форума Ответить с цитированием
Старый 07.01.2013, 19:13   #10
rrrFer
Санитар
Старожил
 
Аватар для rrrFer
 
Регистрация: 04.10.2008
Сообщений: 2,577
По умолчанию

Цитата:
спасибо,попробую так
да пжалсто. Пиши о результатах.
rrrFer вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Программа на языке "Ассемблер" - ввод строки, анализ длины строки, добавление точки в конец строки Алексей_2012 Помощь студентам 1 05.04.2012 11:26
Сделать в гриде строки выше, чтобы не растягивать строки до бесконечности kris__tina БД в Delphi 1 09.06.2011 15:31
Создание пустой строки и копирование в неё содержимое предыдущей строки Gvaridos Microsoft Office Excel 2 29.10.2010 13:33
Определять максимальную длину той части строки s, которая не содержит символы из строки s1. Александе еть я Общие вопросы C/C++ 5 13.04.2010 20:54
Перенести символа с начала строки в место перед запятой этой же строки. Zhiltsov Microsoft Office Excel 4 05.06.2009 13:10