![]() |
|
|
Регистрация Восстановить пароль |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
![]() |
|
|
Опции темы | Поиск в этой теме |
![]() |
#1 |
Пользователь
Регистрация: 31.10.2011
Сообщений: 14
|
![]()
Подскажите, как подсчитать количество слов в строке без использования строковых подпрограмм? И как определить является ли текст перевёртышем без учёта пробелов и различия строчных и просписных букв???
|
![]() |
![]() |
![]() |
#2 |
Регистрация: 20.02.2012
Сообщений: 8
|
![]()
Число слов в строке в простейшем случае, если между словами не более 1 пробела:
Количество слов = Количество пробелов + 1 Иначе посложнее, можно удалить лишние пробелы и оставить по одному между словами. Насчет перевертыша я бы попробовала так: 1) Исходную строку очистила бы от лишних пробелов и перевела все символы в нижний регистра 2) Строку-перевертыш тоже от пробелов и нижний регистра 3) Строку-перевертыш копирую посимвольно в временную строку, начиная с последней до первой буквы 4) сравниваю исходную строку с этой временной строкой, например, с помощью strcmp Это примерный алгоритм, по ходу можно доработать Последний раз редактировалось Blondes; 20.02.2012 в 14:21. |
![]() |
![]() |
![]() |
#3 | ||
Старожил
Регистрация: 08.02.2012
Сообщений: 2,173
|
![]() Цитата:
Цитата:
Правильно поставленная задача - три четверти решения.
|
||
![]() |
![]() |
![]() |
#4 |
Пользователь
Регистрация: 31.10.2011
Сообщений: 14
|
![]()
Я всё это понимаю,но я не могу додуматься как примерно записать это в виде кода?
|
![]() |
![]() |
![]() |
#5 |
Профессионал
Пользователь
Регистрация: 25.05.2011
Сообщений: 91
|
![]()
Если ты это всё понимаешь, стало быть у тебя есть какие-то попытки написать код.
Выкладывай его сюда, посмотрим.
Помог? Будь человеком - жми на весы слева!
|
![]() |
![]() |
![]() |
#6 |
Пользователь
Регистрация: 31.10.2011
Сообщений: 14
|
![]() Код:
Последний раз редактировалось ACE Valery; 20.02.2012 в 18:07. |
![]() |
![]() |
![]() |
#7 |
Регистрация: 20.02.2012
Сообщений: 8
|
![]()
для строки-перевертыша можно как-то так
Код:
|
![]() |
![]() |
![]() |
#8 |
Пользователь
Регистрация: 31.10.2011
Сообщений: 14
|
![]()
Ну с перевёртышем я разобрался,а вот с количеством слов нет. Подскажите пожалуйста. Очень надо
|
![]() |
![]() |
![]() |
#9 |
Регистрация: 20.02.2012
Сообщений: 8
|
![]()
вы нормально вроде написали количество слов. только я бы написала условия цикла другие
Код:
возможно убрать проверку '\n' из условия. Последний раз редактировалось ACE Valery; 20.02.2012 в 18:07. |
![]() |
![]() |
![]() |
#10 |
Пользователь
Регистрация: 31.10.2011
Сообщений: 14
|
![]()
Но всё равно получается неправильный ответ, всё время 1 пишет
|
![]() |
![]() |
![]() |
|
![]() |
||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
Сделать в гриде строки выше, чтобы не растягивать строки до бесконечности | kris__tina | БД в Delphi | 1 | 09.06.2011 15:31 |
Даны строки S и S0. Удалить из строки S все подстроки, совпадающие с S0 . Если совпадающих подстрок нет, | Шпунюся | Помощь студентам | 1 | 16.12.2010 21:02 |
Создание пустой строки и копирование в неё содержимое предыдущей строки | 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 |