![]() |
|
Модераторы: Poseidon |
![]()
|
|
| Fedor1989 |
|
|||
|
Новичок Профиль Группа: Участник Сообщений: 16 Регистрация: 24.11.2007 Репутация: нет Всего: нет |
Помогите написть лабу.
Дана строка символов.Распечатать слова, отличные от последнего ,оставив в каждом слове только первые вхождение каждой буквы. например: строка символов: "Весна наступила птицы прелетели" на экран должно выводится "Весна наступил птицы прелти" |
|||
|
||||
| Fedor1989 |
|
|||
|
Новичок Профиль Группа: Участник Сообщений: 16 Регистрация: 24.11.2007 Репутация: нет Всего: нет |
может бать кто-нибудь идею поткинет
|
|||
|
||||
| mr.Anderson |
|
|||
![]() iOS Lead Developer ![]() ![]() ![]() ![]() Профиль Группа: Участник Клуба Сообщений: 3374 Регистрация: 20.12.2004 Где: далеко Репутация: 16 Всего: 128 |
Могу дать только идею. И написать код, но на паскале, т.к. С++ уже подзабыл. Если надо, выложу.
Добавлено через 5 минут и 49 секунд В общем, вот паскалевский вариант. Если сишники зайдут, перепишите на С++.
Добавлено через 11 минут и 32 секунды Идея работы. 1. Заводим логический массив от 0 до 255, куда гарантированно влезут все символы. В нем будем хранить индикатор, был ли данный символ в данном слове. 2. Получаем строку. 3. Пробегаемся по ней посимвольно. 4. Если текущий символ - пробел (разделитель слов), то: 4.1. Пробегаемся по логическому массиву, сбрасывая все элементы на False. 4.2. Выводим пробел. 4.3. Прерываем цикл и продолжаем его со следующей итерации (continue). 5. Если текущий символ - НЕ пробел (т.е. НЕ разделитель слов), и по индексу кода данного символа в нашем логическом массиве стоит False, т.е. этого символа еще не было в данном слове, то: 5.1. Выводим данный символ. 5.2. В логический массив (опять же, по индексу кода данного символа в таблице ASCII) выставляем True. Вот и весь алгоритм работы. Более оптимального варианта я не вижу. Это сообщение отредактировал(а) mr.Anderson - 17.12.2007, 18:04 |
|||
|
||||
| Fedor1989 |
|
|||
|
Новичок Профиль Группа: Участник Сообщений: 16 Регистрация: 24.11.2007 Репутация: нет Всего: нет |
мне бы на C++ а то я не силен в pascal
|
|||
|
||||
| mr.Anderson |
|
|||
![]() iOS Lead Developer ![]() ![]() ![]() ![]() Профиль Группа: Участник Клуба Сообщений: 3374 Регистрация: 20.12.2004 Где: далеко Репутация: 16 Всего: 128 |
Я на С++ не смогу, уже не помню. Я дал идею. Мож сам справишься с кодом? Он прям пошагово описан.
|
|||
|
||||
| Fedor1989 |
|
|||
|
Новичок Профиль Группа: Участник Сообщений: 16 Регистрация: 24.11.2007 Репутация: нет Всего: нет |
вот надумал код только он ничего не выводит
|
|||
|
||||
| Fedor1989 |
|
|||
|
Новичок Профиль Группа: Участник Сообщений: 16 Регистрация: 24.11.2007 Репутация: нет Всего: нет |
помогите отыскать ошибку
|
|||
|
||||
![]()
|
| Правила форума "Центр помощи" | |
|
|
ВНИМАНИЕ! Прежде чем создавать темы, или писать сообщения в данный раздел, ознакомьтесь, пожалуйста, с Правилами форума и конкретно этого раздела.
Более подробно с правилами данного раздела Вы можете ознакомится в этой теме. Если Вам помогли и атмосфера форума Вам понравилась, то заходите к нам чаще! С уважением, Poseidon, Rodman |
| 0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей) | |
| 0 Пользователей: | |
| « Предыдущая тема | Центр помощи | Следующая тема » |
|
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |