Форум программистов, компьютерный форум, киберфорум
Lisp
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.60/5: Рейтинг темы: голосов - 5, средняя оценка - 4.60
0 / 0 / 0
Регистрация: 20.11.2020
Сообщений: 2
Common Lisp

Изменить список слов, удалив из каждого атома все вхождения символа «а»

20.11.2020, 20:07. Показов 976. Ответов 3
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Здравствуйте всем. Помогите пожалуйста с задачкой:
Дан список слов (символические атомы, состоящие только из букв,
). Измените список, удалив из каждого атома все вхождения символа «а».
Пример: (bank c a fta arbore brad) -> (bnc c ft rbore brd)
0
cpp_developer
Эксперт
20123 / 5690 / 1417
Регистрация: 09.04.2010
Сообщений: 22,546
Блог
20.11.2020, 20:07
Ответы с готовыми решениями:

Изменить текст, удалив из него все повторные вхождения слов.
Изменить текст, удалив из него все повторные вхождения слов.

Дана последовательность слов. Напечатать новый текст, удалив из каждого слова все предыдущие вхождения последней букв
Дана последовательность слов. Напечатать новый текст, удалив из каждого слова все предыдущие вхождения последней букв

Напечатать все слова последовательности, удалив из слов все вхождения первой буквы
Дана последовательность, состоящая из 10 слов. Напечатать все слова последовательности, предварительно удалив из слов все последующие...

3
Супер-модератор
Эксперт функциональных языков программированияЭксперт Python
 Аватар для Catstail
38192 / 21125 / 4309
Регистрация: 12.02.2012
Сообщений: 34,732
Записей в блоге: 14
21.11.2020, 09:23
HomeLisp:

Lisp
1
2
3
4
5
6
(defun task (list)
  (mapcar (lambda (x) (implode (remove 'a (explode x)))) (remove 'a list)))
 
 
(task '(bank c a fta arbore brad)) 
==> (BNK C FT RBORE BRD)
1
 Аватар для nullxdth
2304 / 1063 / 77
Регистрация: 12.03.2013
Сообщений: 4,987
22.11.2020, 10:02
CL
Lisp
1
2
3
4
5
6
7
(defun fn (xs &optional (sym #\A))
  (remove '|| (mapcar (lambda (x)
                        (intern (remove sym (string x))))
                      xs)))
 
(fn '(bank c a fta arbore brad))
;; (BNK C FT RBORE BRD)
2
Супер-модератор
Эксперт функциональных языков программированияЭксперт Python
 Аватар для Catstail
38192 / 21125 / 4309
Регистрация: 12.02.2012
Сообщений: 34,732
Записей в блоге: 14
22.11.2020, 11:37
HomeLisp, еще вариант:

Lisp
1
2
3
4
5
6
(defun task (list)
  (input (strRep (output list) "A" "")))
 
 
(task '(bank c a fta arbore brad))
==> (BNK C FT RBORE BRD)
Причем, он будет работать и со вложенными списками:

Lisp
1
2
3
4
5
(task '(bank c (a fta) arbore brad))
==> (BNK C (FT) RBORE BRD)
 
(task '(bank c (a fta) (((a))) arbore brad))
==> (BNK C (FT) ((NIL)) RBORE BRD)
1
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
raxper
Эксперт
30234 / 6612 / 1498
Регистрация: 28.12.2010
Сообщений: 21,154
Блог
22.11.2020, 11:37
Помогаю со студенческими работами здесь

Преобразовать каждое слово в строке, удалив из него все вхождения заданного символа
Помогите решить! Дана строка, состоящая из символов латинского алфавита, разделенных пробелами (одним или несколькими). Преобразовать...

Напечатать все слова, отличные от последнего, удалив из слов все последующие вхождения первой буквы
Дана последовательность, содержащая от 2 до 30 слов, в каждом из которых от 2 до 10 латинских букв, между соседними словами заданы не менее...

Напечатать все слова строки, предварительно удалив из каждого слова все предыдущие вхождения последней буквы
дана последовательность слов разделенных пробелами .Напечатать все слова предварительно удалив из каждого слова все предыдущие вхождения...

Удалить из строки все вхождения каждого символа, за исключением первого
Дана последовательность символов(строка).Если какой-то символ в ней встречается более одного раза ,оставить только первое вхождение.

Заменить все первые левые вхождения символа “a” на 00, а все правые вхождения символа “a” на 11
Заменить все первые левые вхождения символа “a” на 00, а все правые вхождения символа “a” на 11, остальные без изменений


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
4
Ответ Создать тему
Новые блоги и статьи
Переходник USB-CAN-GPIO
Eddy_Em 20.03.2026
Достаточно давно на работе возникла необходимость в переходнике CAN-USB с гальваноразвязкой, оный и был разработан. Однако, все меня терзала совесть, что аж 48-ногий МК используется так тупо: просто. . .
Оттенки серого
Argus19 18.03.2026
Оттенки серого Нашёл в интернете 3 прекрасных модуля: Модуль класса открытия диалога открытия/ сохранения файла на Win32 API; Модуль класса быстрого перекодирования цветного изображения в оттенки. . .
SDL3 для Desktop (MinGW): Рисуем цветные прямоугольники с помощью рисовальщика SDL3 на Си и C++
8Observer8 17.03.2026
Содержание блога Финальные проекты на Си и на C++: finish-rectangles-sdl3-c. zip finish-rectangles-sdl3-cpp. zip
Символические и жёсткие ссылки в Linux.
algri14 15.03.2026
Существует два типа ссылок — символические и жёсткие. Ссылка в Linux — это запись в каталоге, которая может указывать либо на inode «файла-ИСТОЧНИКА», тогда это будет «жёсткая ссылка» (hard link),. . .
[Owen Logic] Поддержание уровня воды в резервуаре количеством включённых насосов: моделирование и выбор регулятора
ФедосеевПавел 14.03.2026
Поддержание уровня воды в резервуаре количеством включённых насосов: моделирование и выбор регулятора ВВЕДЕНИЕ Выполняя задание на управление насосной группой заполнения резервуара,. . .
делаю науч статью по влиянию грибов на сукцессию
anaschu 13.03.2026
прикрепляю статью
SDL3 для Desktop (MinGW): Создаём пустое окно с нуля для 2D-графики на SDL3, Си и C++
8Observer8 10.03.2026
Содержание блога Финальные проекты на Си и на C++: hello-sdl3-c. zip hello-sdl3-cpp. zip Результат:
Установка CMake и MinGW 13.1 для сборки С и C++ приложений из консоли и из Qt Creator в EXE
8Observer8 10.03.2026
Содержание блога MinGW - это коллекция инструментов для сборки приложений в EXE. CMake - это система сборки приложений. Здесь описаны базовые шаги для старта программирования с помощью CMake и. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru