Поиск:

Ответ в темуСоздание новой темы Создание опроса
> найти простое число 2n-1=N 
:(
    Опции темы
bezymannuy
Дата 1.5.2012, 07:05 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 1
Регистрация: 1.5.2012

Репутация: нет
Всего: нет



Составить программу вычисляющий 2n-1=N (где n степень числа 2) и проверяющим является ли N простым числом. Число n меняется от 0 до 100. Вывести все n при которых N простое.

Помогите пожалуйста решить задачку на MULISP
PM MAIL   Вверх
_sg
Дата 12.5.2012, 21:28 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 119
Регистрация: 16.5.2007

Репутация: 2
Всего: 2



Чужое решение с изменениями
Код

(defun primep (n)
  (loop for i from 3 to (isqrt n) by 2 never (zerop (rem n i))))
        
(defun lucas-lehmer (n)
  (loop with m = (1- (expt 2 n))
        for i from 1 to (1- n)
        for j = 4 then (rem (- (expt j 2) 2) m)
        finally (return (zerop j))))

(defun prime (m &optional (v '(2)) (n 2))
  (cond ((= m 2) (reverse v))
        ((and (primep n) (lucas-lehmer n)) (prime (1- m) (cons n v) (1+ n)))
        ((prime (1- m) v (1+ n)))))

> (prime 100)
(2 3 5 7 13 17 19 31 61 89)


Это сообщение отредактировал(а) _sg - 12.5.2012, 21:31
--------------------
vk.com/ansicommonlisp
PM MAIL   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
Правила форума LISP
Void
  • Пожалуйста, создавайте темы с содержательными названиями.
  • Lisp — это целое семейство языков. Всегда указывайте в теме используемый диалект (Common Lisp, Scheme и т.д.).
  • Уважаемые учащиеся, здесь всегда рады помочь Вам, но не делать за Вас вашу работу. У вас гораздо больше шансов получить помощь, если Вы приложите усилия и поделитесь с нами проблемами и результатами. В противном случае добро пожаловать в раздел Центр Помощи.
  • Получив ответ на интересующий Вас вопрос, не забудьте пометить его как решённый.

Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, Void.

 
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | LISP | Следующая тема »


 




[ Время генерации скрипта: 0.0369 ]   [ Использовано запросов: 22 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.