Форум программистов, компьютерный форум, киберфорум
Lisp
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.50/6: Рейтинг темы: голосов - 6, средняя оценка - 4.50
3 / 3 / 1
Регистрация: 20.10.2013
Сообщений: 94

Создания из двух список одного. Другой вариант

06.04.2014, 20:16. Показов 1215. Ответов 9
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
и еще один вариант,если можно.

даны два списка a=(1 2 3 4) и b=(4 5 6 7) получить новый список у=(1/4 +2/5 + 3/6 +4/7)

Вот здесь у меня мыслей нет.буквы и знак равно меня смутили.
0
cpp_developer
Эксперт
20123 / 5690 / 1417
Регистрация: 09.04.2010
Сообщений: 22,546
Блог
06.04.2014, 20:16
Ответы с готовыми решениями:

Создания из двух список одного
Добрый вечер!)Учитывая что Лисп не работает у меня,проверьте пожалуйста работает ли программка.программка написана для LispIDE дано...

Как скопировать один список в другой список, чтобы изменения одного не затрагивали другого?
как скопировать список a = ] в список b, чтоб изменения одного не затрагивали второй.... в С это было как то проще. Спасибо

Выбрать в другой список те строки, которые встречаются в исходном списке более одного раза и напечатать созданный список
это два списка..а дальше как?алгоритм какой?помогите пожалуйста using System; using System.Collections.Generic; using...

9
defun
603 / 617 / 44
Регистрация: 30.04.2011
Сообщений: 702
06.04.2014, 20:31
Lisp
1
2
3
4
INSOMNIA> (read-from-string
           (format () "(~{~A~^ + ~})" 
                   (map 'list #'/ '(1 2 3 4) '(5 6 7 8))))
(1/5 + 1/3 + 3/7 + 1/2)
3
493 / 426 / 56
Регистрация: 29.04.2011
Сообщений: 443
06.04.2014, 20:51
Lisp
1
2
3
4
(defun F (a b)
    (mapcar #'(lambda (x y) (implode (list x '/ y))) a b))
 
(f '(1 2 3) '(4 5 6)) ==> (1/4 2/5 1/2)
1
defun
603 / 617 / 44
Регистрация: 30.04.2011
Сообщений: 702
06.04.2014, 20:51
route66, а где плюсы? =)
1
3 / 3 / 1
Регистрация: 20.10.2013
Сообщений: 94
06.04.2014, 21:02  [ТС]
Функция имплод неопределена

вы тоже на Lisp IDE написали?)
0
Супер-модератор
Эксперт функциональных языков программированияЭксперт Python
 Аватар для Catstail
38173 / 21108 / 4307
Регистрация: 12.02.2012
Сообщений: 34,706
Записей в блоге: 14
06.04.2014, 21:09
Lisp
1
2
3
4
5
6
7
8
9
(defun task (s1 s2)
  (cond ((null (cdr s2)) (cons (/ (car s1) (car s2)) nil))
        (t (cons (/ (car s1) (car s2)) (cons '+ (task (cdr s1) (cdr s2)))))))
 
==> task
 
(task '(1 2 3 4) '(4 5 6 7))
 
==> (1/4 + 2/5 + 1/2 + 4/7)
Добавлено через 41 секунду
Цитата Сообщение от Otar4ik Посмотреть сообщение
Функция имплод неопределена
- это, например, в HomeLisp есть такая.
4
3 / 3 / 1
Регистрация: 20.10.2013
Сообщений: 94
06.04.2014, 21:18  [ТС]
Сможете объяснить мне на будущее по строкам что сделали,чтобы я больше не беспокоил вас)
0
Супер-модератор
Эксперт функциональных языков программированияЭксперт Python
 Аватар для Catstail
38173 / 21108 / 4307
Регистрация: 12.02.2012
Сообщений: 34,706
Записей в блоге: 14
06.04.2014, 23:14
Lisp
1
2
3
(defun task (s1 s2)
  (cond ((null (cdr s2)) (cons (/ (car s1) (car s2)) nil)) ;; если списки сейчас кончатся - вернем список (n1/n2)
        (t (cons (/ (car s1) (car s2)) (cons '+ (task (cdr s1) (cdr s2))))))) ;; приделаем "n1/n2 +" к рекурсивному вызову на остатке списков
2
493 / 426 / 56
Регистрация: 29.04.2011
Сообщений: 443
07.04.2014, 11:03
еще вариант:
Lisp
1
2
3
4
(defun F (l lst)
    (butlast (mapcan #'(lambda (x y) (cons (implode (list x '/ y)) (list '+))) l lst)))
    
(f '(1 2 3 4 5) '(6 7 8 9 10)) ==> (1/6 + 2/7 + 3/8 + 4/9 + 1/2)
2
 Аватар для _sg
4708 / 4403 / 380
Регистрация: 12.05.2012
Сообщений: 3,101
08.04.2014, 13:48
как вариант:
Lisp
1
2
3
4
5
6
7
(defun sum-/ (w v)
  (reduce #'+ (mapcar #'/ w v)))
 
> (sum-/ '(1 2 3 4) '(4 5 6 7))
241/140
> (reduce #'+ '(1/4 2/5 3/6 4/7))
241/140
Добавлено через 3 минуты
Lisp
1
2
3
4
5
(defun sum-/ (w v)
  (butlast (mapcan #'(lambda (a b) (list (/ a b) '+)) w v)))
 
> (sum-/ '(1 2 3 4) '(4 5 6 7))
(1/4 + 2/5 + 1/2 + 4/7)
Добавлено через 1 минуту
Lisp
1
2
3
4
5
(defun sum-/ (w v)
  (butlast (mapcan #'(lambda (a b) `(,(/ a b) +)) w v)))
 
> (sum-/ '(1 2 3 4) '(4 5 6 7))
(1/4 + 2/5 + 1/2 + 4/7)
Добавлено через 9 минут
Lisp
1
2
3
4
5
6
7
(defun sum-/ (w v)
  (butlast (loop for a in w
                 for b in v
                 nconc (list (/ a b) '+))))
 
> (sum-/ '(1 2 3 4) '(4 5 6 7))
(1/4 + 2/5 + 1/2 + 4/7)
2
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
raxper
Эксперт
30234 / 6612 / 1498
Регистрация: 28.12.2010
Сообщений: 21,154
Блог
08.04.2014, 13:48
Помогаю со студенческими работами здесь

Скрипт для двух файлов: запись из одного в другой
Помогите пожалуйста написать скрипт такого рода: открываются для файла,первый читается, если в нем находиться нужное слово,то все,после...

Копирование данных с одного листа на другой при двух и трех условиях
Добрый вечер! Подскажите, пожалуйста, как сделать так, чтобы данные с листа, на который выгружается база данных ("Выгрузка"),...

Выбор данных для двух столбцов по двум разным условиям из одного столбца другой таблицы
Здравствуйте! Возникла такая задачка Есть 2 таблицы Resp_id (столбцы Id, FIO и тд) Soc_resp_answ (столбцы Resp_ID, Col_ID,...

настройка двух Static, при падении одного, трафик идет на другой (SLA, RTR). GNS3
Добрый день! Имеется топология, где от одного маршрутизатора (c-7200) идет три сети( static, ospf, static). Проблема в том, что не...

другой вариант функции
function elements_by_id(elements) { /* elements = { 'variable':'element_id' } */ ...


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

Или воспользуйтесь поиском по форуму:
10
Ответ Создать тему
Новые блоги и статьи
SDL3 для Web (WebAssembly): Работа со звуком через SDL3_mixer
8Observer8 08.02.2026
Содержание блога Пошагово создадим проект для загрузки звукового файла и воспроизведения звука с помощью библиотеки SDL3_mixer. Звук будет воспроизводиться по клику мышки по холсту на Desktop и по. . .
SDL3 для Web (WebAssembly): Основы отладки веб-приложений на SDL3 по USB и Wi-Fi, запущенных в браузере мобильных устройств
8Observer8 07.02.2026
Содержание блога Браузер Chrome имеет средства для отладки мобильных веб-приложений по USB. В этой пошаговой инструкции ограничимся работой с консолью. Вывод в консоль - это часть процесса. . .
SDL3 для Web (WebAssembly): Обработчик клика мыши в браузере ПК и касания экрана в браузере на мобильном устройстве
8Observer8 02.02.2026
Содержание блога Для начала пошагово создадим рабочий пример для подготовки к экспериментам в браузере ПК и в браузере мобильного устройства. Потом напишем обработчик клика мыши и обработчик. . .
Философия технологии
iceja 01.02.2026
На мой взгляд у человека в технических проектах остается роль генерального директора. Все остальное нейронки делают уже лучше человека. Они не могут нести предпринимательские риски, не могут. . .
SDL3 для Web (WebAssembly): Вывод текста со шрифтом TTF с помощью SDL3_ttf
8Observer8 01.02.2026
Содержание блога В этой пошаговой инструкции создадим с нуля веб-приложение, которое выводит текст в окне браузера. Запустим на Android на локальном сервере. Загрузим Release на бесплатный. . .
SDL3 для Web (WebAssembly): Сборка C/C++ проекта из консоли
8Observer8 30.01.2026
Содержание блога Если вы откроете примеры для начинающих на официальном репозитории SDL3 в папке: examples, то вы увидите, что все примеры используют следующие четыре обязательные функции, а. . .
SDL3 для Web (WebAssembly): Установка Emscripten SDK (emsdk) и CMake для сборки C и C++ приложений в Wasm
8Observer8 30.01.2026
Содержание блога Для того чтобы скачать Emscripten SDK (emsdk) необходимо сначало скачать и уставить Git: Install for Windows. Следуйте стандартной процедуре установки Git через установщик. . . .
SDL3 для Android: Подключение Box2D v3, физика и отрисовка коллайдеров
8Observer8 29.01.2026
Содержание блога Box2D - это библиотека для 2D физики для анимаций и игр. С её помощью можно определять были ли коллизии между конкретными объектами. Версия v3 была полностью переписана на Си, в. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru