![]() |
Модераторы: Poseidon |
![]() ![]() ![]() |
|
xStorm |
|
|||
![]() Новичок Профиль Группа: Участник Сообщений: 30 Регистрация: 25.4.2007 Репутация: нет Всего: нет |
Задача: Подсчитать количиство слов, состоящих только из цифр. (Учесть различные варианты ввода строки)
Вот так я решил решил эту проблему, но задача работает некорректно если слово оканчивается на цифру, поэтому я добавил условие if((i-1 >= 0) && !(fstr[i-1] == ' ') && !(fstr[i-1] == '\t') && !(fstr[i-1] >= '0' && fstr[i-1] <= '9')) j=0; Почему оно не работает?? (16 строка кода) В С я новичок, строго не судите ![]() Это сообщение отредактировал(а) xStorm - 25.4.2007, 08:43 |
|||
|
||||
darkart |
|
|||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 379 Регистрация: 9.11.2005 Репутация: 26 Всего: 31 |
|
|||
|
||||
xStorm |
|
|||
![]() Новичок Профиль Группа: Участник Сообщений: 30 Регистрация: 25.4.2007 Репутация: нет Всего: нет |
Спасибо. Это вы сидели писали? Но вопрос к сожалению не решен, я всеголишь хотел узнать почему моё условие на 16 строчке кода не выполняется. Моя идея решения: посимвольно проверять слово и если при его окончании (пробел, забой, конец строки) переменная j > 0 то слово состоит из цифр. Почти Все работает, кроме условия на 16 строчке, в нём я проверяю ситуацию, что если предшествующий символ не пробел и не забой и не цифра то j = 0. Понимаю писать программу гораздо приятнее чем копаться в коде непрофессионала, но меня интересует 1 строчка, да и задачка короткая, если возможно помогите разобраться.
ЗЫ: Спосибо за написанную прогу, кое-что для себя отметил. Да, в ней маленький жучок сидит. Но его всего ничего править. Это сообщение отредактировал(а) xStorm - 25.4.2007, 16:18 |
|||
|
||||
apook |
|
||||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 794 Регистрация: 12.7.2006 Репутация: 10 Всего: 23 |
Начал разбираться и сразу на что то нанкнулся
Вдумайся
так можно, но странновато, тогда уж не &&, а || или только <9 но это мелочь. Далее:
Если у тебя flag равен нулю если символ fstr[ i ] не равен пробелу то условие если символ fstr[ i ] равен пробелу и flag равен нулю не выполнится никогда( наверно ![]() Короче напутал с и или, далее по ходу в том-же духе. -------------------- Мои руки из дуба, голова из свинца ну и пусть ... |
||||
|
|||||
apook |
|
|||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 794 Регистрация: 12.7.2006 Репутация: 10 Всего: 23 |
держи не парься
-------------------- Мои руки из дуба, голова из свинца ну и пусть ... |
|||
|
||||
xStorm |
|
|||
![]() Новичок Профиль Группа: Участник Сообщений: 30 Регистрация: 25.4.2007 Репутация: нет Всего: нет |
Извени, но не работает, попробуй ввести хотябы qq11 11qq должно быть 0, а он 2 выдаёт.
(fstr[i] >= '0' && fstr[i] <= '9') равняется isdigit(fstr[ i ]), просто модуль я не подключал. Непонимаю ваших возмущений
Всё выполняется тут ^^. Мне ведь не это надо ![]() Попробую ещё спросить: Почему не выполняется условие на 16 строчке? Идея у меня правильная, а может с лексикой языка что намудрил, да намудрил точно иначе бы работало, токо где именно найти не могу. Так что вопрос ещё открыт ![]() |
|||
|
||||
Xenon |
|
|||
![]() Эксперт ![]() ![]() ![]() Профиль Группа: Участник Клуба Сообщений: 1529 Регистрация: 12.4.2006 Репутация: 19 Всего: 50 |
Это сообщение отредактировал(а) Xenon - 25.4.2007, 22:30 |
|||
|
||||
xStorm |
|
|||
![]() Новичок Профиль Группа: Участник Сообщений: 30 Регистрация: 25.4.2007 Репутация: нет Всего: нет |
Я в теме указал какой у меня комптлятор. тип bool с помощью #define легко воспроизвести, а вот эта строчка вообще никак
а именно ценртальная часть. разъясните как мне переделать. Да и вообще я всеголишь прошу 1 строчку кода у меня проверить! Зачем вы мне проги пишите? Извените конечно за настойчивость. |
|||
|
||||
Xenon |
|
||||||
![]() Эксперт ![]() ![]() ![]() Профиль Группа: Участник Клуба Сообщений: 1529 Регистрация: 12.4.2006 Репутация: 19 Всего: 50 |
xStorm, а я твой код и поправил.
Чем твоя строчка
координально отличается от
? А насчет компилятора виноват - не заметил. std:: сотри.
Это сообщение отредактировал(а) Xenon - 26.4.2007, 01:12 |
||||||
|
|||||||
apook |
|
|||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 794 Регистрация: 12.7.2006 Репутация: 10 Всего: 23 |
-------------------- Мои руки из дуба, голова из свинца ну и пусть ... |
|||
|
||||
xStorm |
|
|||
![]() Новичок Профиль Группа: Участник Сообщений: 30 Регистрация: 25.4.2007 Репутация: нет Всего: нет |
Ни 1, ни 2 не работают правильно. Поэксперементируйте с вариантами ввода.
Darkart единственный кто написал работающий код. Просто думал поможете исправить мой код. Ну да ладно, задача решина, вопрос будем считать решенным. |
|||
|
||||
Xenon |
|
|||
![]() Эксперт ![]() ![]() ![]() Профиль Группа: Участник Клуба Сообщений: 1529 Регистрация: 12.4.2006 Репутация: 19 Всего: 50 |
xStorm, в чем некорректность моего кода?
|
|||
|
||||
xStorm |
|
|||
![]() Новичок Профиль Группа: Участник Сообщений: 30 Регистрация: 25.4.2007 Репутация: нет Всего: нет |
В условии задачи сказано (условие в 1 посте), что нужно учесть различные варианты ввода, а программа не работает с табуляцией и некорректно отображает кол-во слов если вводить их через несколько пробелов, и при вводе пустой строки выводит 1.
|
|||
|
||||
Xenon |
|
||||
![]() Эксперт ![]() ![]() ![]() Профиль Группа: Участник Клуба Сообщений: 1529 Регистрация: 12.4.2006 Репутация: 19 Всего: 50 |
xStorm, эх ... Как же ты тестировал? Я только проблему с табуляцией нашел:
Вывод:
Это сообщение отредактировал(а) Xenon - 28.4.2007, 02:31 |
||||
|
|||||
![]() ![]() ![]() |
Правила форума "Центр помощи" | |
|
ВНИМАНИЕ! Прежде чем создавать темы, или писать сообщения в данный раздел, ознакомьтесь, пожалуйста, с Правилами форума и конкретно этого раздела.
Более подробно с правилами данного раздела Вы можете ознакомится в этой теме. Если Вам помогли и атмосфера форума Вам понравилась, то заходите к нам чаще! С уважением, Poseidon, Rodman |
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей) | |
0 Пользователей: | |
« Предыдущая тема | Центр помощи | Следующая тема » |
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |