Компьютерный форум
Правила
Вернуться   Компьютерный форум > Форум программистов > Языки программирования > Lisp
Перезагрузить страницу Необходимо перемножить многочлены, заданные списками коэффициентов
Ответ
 
Опции темы Опции просмотра
  (#1 (permalink)) Старый
frehrer frehrer вне форума
Новичок
 
Сообщений: 5
Сказал(а) спасибо: 0
Поблагодарили 0 раз(а) в 0 сообщениях
Регистрация: 28.04.2009
По умолчанию Необходимо перемножить многочлены, заданные списками коэффициентов - 28.04.2009, 03:39

Собственно необходимо перемножить многочлены, заданные списками коэфф-в.
Заранее спасибо.
Ответить с цитированием
  (#2 (permalink)) Старый
VH VH вне форума
Member
 
Сообщений: 781
Сказал(а) спасибо: 0
Поблагодарили 11 раз(а) в 10 сообщениях
Регистрация: 29.06.2006
По умолчанию 04.05.2009, 17:58

Код:
(defun F (P1 P2)
  (apply 'append
   (mapcar
   '(lambda (e2)
      (mapcar 
      '(lambda (e1)
        (cons
         (* (car e1) (car e2))
         (mapcar '+ (cdr e1) (cdr e2))))
       P1))
    P2)))
Пока без приведения подобных.
Формат представления многочлена: ((коэффициент_C степень_X1 степень_X2...)...)
Ответить с цитированием
  (#3 (permalink)) Старый
frehrer frehrer вне форума
Новичок
 
Сообщений: 5
Сказал(а) спасибо: 0
Поблагодарили 0 раз(а) в 0 сообщениях
Регистрация: 28.04.2009
По умолчанию 07.05.2009, 13:01

А с приведением? И если можно, то как перевести на Scheme...
Ответить с цитированием
  (#4 (permalink)) Старый
frehrer frehrer вне форума
Новичок
 
Сообщений: 5
Сказал(а) спасибо: 0
Поблагодарили 0 раз(а) в 0 сообщениях
Регистрация: 28.04.2009
По умолчанию 07.05.2009, 19:01

Осилил сам... Больше 50 строк вышло

P.S. Если кому-то поможет мой корявый код- пишите, выложу.
Ответить с цитированием
  (#5 (permalink)) Старый
VH VH вне форума
Member
 
Сообщений: 781
Сказал(а) спасибо: 0
Поблагодарили 11 раз(а) в 10 сообщениях
Регистрация: 29.06.2006
По умолчанию 13.05.2009, 17:32

Приведение подобных:
Код:
(defun F (L)
  (cond
   ((null L) nil)
   ((null (cdr L)) L)
   (T (F1 (car L) (F (cdr L))))))
Код:
(defun F1 (E L)
  (cond
   ((null L) (cons E nil))
   ((equal (cdr E) (cdar L))
    (cons (cons (+ (car E) (caar L)) (cdr E)) (cdr L)))
   (T (cons (car L) (F1 E (cdr L))))))
Ответить с цитированием
Ads.
Ads
Ответ

Опции темы
Опции просмотра

Ваши права в разделе
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.
Trackbacks are Вкл.
Pingbacks are Вкл.
Refbacks are Выкл.


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Функция,которая ищет заданные атомы в S-выражении. katja317 Lisp 3 10.06.2011 17:46
Проблема по теме "Файлы". Определить сколько раз заданные слова встречаются в тексте. Nougami Pascal 0 16.04.2011 05:22
Переставить 2 элемента списка местами заданные по индексу Vall-i Lisp 0 19.12.2010 09:21
Каким образом можно осуществить передачу значений коэффициентов скажем в массив int User++ C++ Builder 1 07.12.2010 10:14
Задачи со списками imported_Lisena Prolog 9 09.11.2010 21:17
Задача со Списками Антон85 Prolog 20 28.01.2009 09:49
Неприводимые, примитивные многочлены и CRC tentul Алгоритмы 7 12.11.2008 18:58
Необходимо перемножить 2 матрицы заданные StringGrid Krank C++ Builder 9 15.11.2007 13:03
Создание эмулятора нажатия мышки на заданные кнопки Rocky Вопросы начинающих программистов 2 29.11.2006 15:57
Как удалить из строки все заданные подстроки slayerwow Pascal 3 17.11.2005 19:42
Являются ли заданные X и Y последовательными элементами списка titanic Lisp 2 12.05.2004 23:51
Как передать в COM-порт заданные 16-ричные числа Anonymous WinAPI 4 21.10.2003 14:49



Powered by vBulletin® Version 3.8.7
Copyright ©2000 - 2018, Jelsoft Enterprises Ltd.
Нardforum.ru - компьютерный форум и программирование, форум программистов