|
|
Регистрация Восстановить пароль |
Повторная активизация e-mail |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
|
|
Опции темы | Поиск в этой теме |
10.05.2015, 21:03 | #1 |
t45t
Участник клуба
Регистрация: 20.03.2012
Сообщений: 1,849
|
C++, удалить элементы списка, начинающихся с "К"
Привет всем, ребят, есть однонаправленный список строк, из него надо удалить элементы, начинающиеся с символов К, к, k и K.
Решил делать так: если первый символ не равен к, то записать всю строку в новый список, иначе не записывать и потом вывести вновь созданный список, почему-то не работает. Пишу в QT, вот проблемная процедура Код:
А вот полный код Код:
from dark to light)
|
10.05.2015, 21:50 | #2 | |
Белик Виталий :)
Старожил
Регистрация: 23.07.2007
Сообщений: 57,097
|
Можно полюбопытствовать, почему не используется вот это?: http://doc.crossplatform.ru/qt/4.7.x/qlist.html
Цитата:
Или задание такое что нельзя?
I'm learning to live...
|
|
10.05.2015, 22:02 | #3 |
t45t
Участник клуба
Регистрация: 20.03.2012
Сообщений: 1,849
|
А как сделать сцепку? qlist нельзя использовать
Почему-то первые две кнопки работают нормально, а вот третья зацикливается при заполнении второго созданного списка (outitems). В чем может быть проблема?
from dark to light)
Последний раз редактировалось Stilet; 11.05.2015 в 06:39. |
11.05.2015, 06:46 | #4 | |
Белик Виталий :)
Старожил
Регистрация: 23.07.2007
Сообщений: 57,097
|
Цитата:
Код:
I'm learning to live...
|
|
11.05.2015, 08:35 | #5 |
t45t
Участник клуба
Регистрация: 20.03.2012
Сообщений: 1,849
|
извините, но смысл мне не очень понятен. Объясните подробнее, пожалуйста.
from dark to light)
|
11.05.2015, 08:56 | #6 |
Белик Виталий :)
Старожил
Регистрация: 23.07.2007
Сообщений: 57,097
|
Попробую. Смысл в следующем. Делается проход по списку. Если определенное условие на текущем элементе сработало то проверяем, не первый ли это элемент в списке. Если первый то удаляем его, а первым делаем следующий за ним (второй). Если не первый то у предидущего элемента выставляем указатель на следующий за удаляемым элемент, а текущий удаляем. Таким образом предидущий элемент цепляется за следующий, а текущий выпадает.
I'm learning to live...
|
11.05.2015, 09:44 | #7 |
t45t
Участник клуба
Регистрация: 20.03.2012
Сообщений: 1,849
|
доходчиво объяснили, спасибо.
Тогда еще вопрос, а что если список состоит из строк, например: 0. Коля Никола 1. Валентина Капралова Как удалить слова? Чтоб получилось Никола Валентина Это на каждой итерации цикла записывать голову в строку и делать еще один цикл по переборке строки? Как Ваш код поправить?
from dark to light)
|
11.05.2015, 10:24 | #8 | |
Белик Виталий :)
Старожил
Регистрация: 23.07.2007
Сообщений: 57,097
|
Цитата:
В любом случае вместо i->spisok_slov[0]=='k' нужно булевую функцию, которая будет заниматься чисткой элемента и возвращать результат, говорящий о том, удалять или нет.
I'm learning to live...
|
|
11.05.2015, 19:56 | #9 |
t45t
Участник клуба
Регистрация: 20.03.2012
Сообщений: 1,849
|
А как это будет выглядеть?
from dark to light)
|
11.05.2015, 20:10 | #10 |
Белик Виталий :)
Старожил
Регистрация: 23.07.2007
Сообщений: 57,097
|
А ты сам попробуй написать разбиение строки на массив слов, а потом сборку строки из этого массива, исключая некоторые слова.
Вот могу примерчик подкинуть: http://www.programmersforum.ru/showthread.php?t=199931
I'm learning to live...
|
|
Похожие темы | ||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
Постоянно слетает галочка "автоматически" в "Параметры Excel", "Формулы", "Вычисления в книге" | Alexsandrr | Microsoft Office Excel | 4 | 19.10.2013 14:22 |
Типизированные файлы - Дан файл целых чисел, найти "Сумму чисел, начинающихся с цифры 1" (Паскаль) | 777pro777 | Помощь студентам | 1 | 27.03.2012 08:42 |
удалить папки из раздела "мой компьютер" - "сеть" | Aлeкceй | Безопасность, Шифрование | 2 | 05.12.2011 18:10 |
VBA_макрос: удалить всю строку в таблице, если в ней есть слово "удалить" | макарошка | Microsoft Office Excel | 15 | 05.10.2010 09:09 |
при вводе на листе "магазин"- код товара появлялось "описание" товара из "склада" с "продажной ценой" | aleksei78 | Microsoft Office Excel | 13 | 25.08.2009 12:04 |