Компьютерный форум
Правила
Вернуться   Компьютерный форум > Форум программистов > Языки программирования > Lisp
Перезагрузить страницу F(a1, a2…..an)= F(1*a1 , 2*a2….n*an) как это решить
Ответ
 
Опции темы Опции просмотра
  (#1 (permalink)) Старый
frolovamv frolovamv вне форума
Новичок
 
Сообщений: 3
Сказал(а) спасибо: 0
Поблагодарили 0 раз(а) в 0 сообщениях
Регистрация: 16.05.2010
По умолчанию F(a1, a2…..an)= F(1*a1 , 2*a2….n*an) как это решить - 16.05.2010, 16:52

F(a1, a2…..an)= F(1*a1 , 2*a2….n*an)
Ответить с цитированием
  (#2 (permalink)) Старый
VH VH вне форума
Member
 
Сообщений: 781
Сказал(а) спасибо: 0
Поблагодарили 11 раз(а) в 10 сообщениях
Регистрация: 29.06.2006
По умолчанию 16.05.2010, 22:09

Это надо такую функцию придумать, чтобы результат её вызова с аргументами a1 a2...an был такой же, как результат её вызова с аргументами 1*a1 2*a2...n*an?
Ответить с цитированием
  (#3 (permalink)) Старый
frolovamv frolovamv вне форума
Новичок
 
Сообщений: 3
Сказал(а) спасибо: 0
Поблагодарили 0 раз(а) в 0 сообщениях
Регистрация: 16.05.2010
По умолчанию 16.05.2010, 22:17

по-видимому так.мне объяснили что решение возможно при введении вспомогательной функции (g(a1....an) (b1.....bn))=(a1+b1 a2+b2....an+bn)
но до меня не доходит...сдать завтра нужно.....я в отчаянии....
Ответить с цитированием
  (#4 (permalink)) Старый
VH VH вне форума
Member
 
Сообщений: 781
Сказал(а) спасибо: 0
Поблагодарили 11 раз(а) в 10 сообщениях
Регистрация: 29.06.2006
По умолчанию 16.05.2010, 22:57

Или Вам надо, чтобы вызов функции (F) возвратил список, в котором первый элемент равен 1*a1, второй - 2*a2 и так далее до n*an?
Код:
(defun F (L &optional (i 1))
  (if L
   (cons
    (* (car L) i)
    (F (cdr L) (1+ i)))))
Ответить с цитированием
  (#5 (permalink)) Старый
VH VH вне форума
Member
 
Сообщений: 781
Сказал(а) спасибо: 0
Поблагодарили 11 раз(а) в 10 сообщениях
Регистрация: 29.06.2006
По умолчанию 17.05.2010, 09:40

Код:
(defun F (A)
  (if A
   (cons
    (car A)
    (G (cdr A) (F (cdr A))))))
Код:
(defun G (A B)
  (mapcar #'+ A B))
Ответить с цитированием
Ads.
  (#6 (permalink)) Старый
frolovamv frolovamv вне форума
Новичок
 
Сообщений: 3
Сказал(а) спасибо: 0
Поблагодарили 0 раз(а) в 0 сообщениях
Регистрация: 16.05.2010
По умолчанию 17.05.2010, 15:34

Спасибо огромное!!!!!!! :-D
Ответить с цитированием
Ads
Ответ

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

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

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


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Помогите решить vadyakov Lisp 2 18.12.2011 21:47
Как решить? VBA Катёна24 Visual Basic 0 16.11.2011 15:05
Помогите решить. Lenka_44 Pascal 0 09.11.2011 00:17
помогите решить... Bakasova Pascal 1 25.09.2011 16:36
Помогите решить! iza Вопросы начинающих программистов 0 11.09.2011 23:01
Кто может решить? АнтиХакер Любые вопросы от новичков 2 15.02.2011 23:28
Помогите решить! бумер777 Prolog 1 23.12.2009 22:15
Помогите решить . fint Задания за деньги 12 06.01.2009 05:08
Помогите решить Vetal07 Pascal 10 14.11.2008 16:22
Как решить задачу dimants Prolog 5 02.12.2004 15:56
Как решить задачу IraQQQQ Prolog 8 22.11.2004 23:47



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