Флейм
GameDev.ru / Флейм / Форум / InFunc (метематика1) (7 стр)

InFunc (метематика1) (7 стр)

Страницы: 16 7 8 921 Следующая »
TonalПостоялецwww26 сен. 20080:46#90
infoliokrat
>Короче, считаю комплиментом
Зря, никаких комплементов, ничего нового, никакой полезной информации...

>буду благодарен, если назовете источник более ранний
Первый запрос в гугл по "обратный факториал"(2002г.)
http://lj.rossia.org/users/yushi/35475.html

infoliokratПостоялецwww26 сен. 20082:57#91
Tonal
>infoliokrat
>>Короче, считаю комплиментом
>Зря, никаких комплементов, ничего нового, никакой полезной информации...
>>буду благодарен, если назовете источник более ранний
>Первый запрос в гугл по "обратный факториал"(2002г.)
>http://lj.rossia.org/users/yushi/35475.html
Там черным по белому сказано: (просто оттуда копирую):

Действительно ли...

1)правильный интерпретатор Пролога должен отвечать на запросы с неопределённой первой переменной, т.е. находить, факториалом чего является Y?
2)...
3)...
4)да, тут ещё zmey@lj подсказывает: а правильно ли здесь везде писать "is", а не "="?
Сперва по пункту 4: is вычисляет свою правую часть и пытается унифицировать результат с левой. = -- обобщенный оператор унификации (см., например, в СВИнской документации разделы 4.26 и 4.6.1). При этом использовать надо именно is, потому что, скажем, 2*2 = 4 дает ложь, и даже 2*2 is 4 дает ложь, а истину дает только 4 is 2*2 -- умереть и не встать.

По пункту 1. Насколько я понимаю -- нет, не должен.

и далее цитирую:

С другой стороны, Ваша программа может проверять, является ли одно число факториалом другого.
...
По пункту 3. Нельзя. Обратный факториал -- вообще штука довольно хитрая. Начать с того, что он далеко не для всех целых чисел определен. Чтобы его вычислить, нужен отдельный алгоритм. Например, вот вариант -- я даю его в процедурной записи, чтобы не отнимать у Вас удовольствия реализации на Прологе:

Это то, что подтверждает: не определяли обратный факториал с помощью карандаша и бумаги путем деления исходного числа на НАТУРАЛЬНЫЕ, а использовались рекурсии, пребор или вычисления факториалов и сравнение с заданным.
Гдядишь так, Tonal, можно легко выбрать число побольше, чем 25! = 15511210043330985984000000 (предложил kerosene) и тогда, при тех тактовых частотах микропроцессоров (2002 год) вычисления путем перебора и сравнения с таким числом будут точно дольше дляиться, чем выполнить последовательно деление на 1 на 2 на 3 на ... 25. Хотите верьте- хотите проверьте.  Таким образом, Ваше право считать, что такое (сзади наперед ) деление не полезно, не ново:
>Зря, никаких комплементов, ничего нового, никакой полезной информации...

И последнее: эту свою функцию я предложил к печати на конференции к годовщине Декрта и лейбница в 1994 году, тогда, когда ИКС (iнфолiякратную карцiну сусвету, а вот заявку на калькулятор с новой кнопкой n!?  оформил только в 2005 году, что и было принято во внимание при экспертизе.
Если даная вами ссылка (программа на ПРОЛОге) больше нравится, так и вычисляйте, я даже не возражаю. Отдельно алгоритм я не патентовал.  Хоть ссылку по запросу эту видел и раньше, но все равно, спасибо. О немецко русском словаре можно не уточнять. З павагай

TonalПостоялецwww26 сен. 20083:09#92
infoliokrat
Дядько не тупи.
По этой ссылке http://lj.rossia.org/users/yushi/35475.html несколькими строчками ниже:

1. X <- 1, Q <- Y
2. Если Q = 1, то успех: Y = X!
3. Если Q делится на X нацело, то Q <- Q/X, X <- X+1, повторить все с шага 2.
4. Иначе ошибка: Y не является факториалом никакого числа.


Так что увы(или ура), но как говорится ВПРОЛЕТЕ!

infoliokratПостоялецwww26 сен. 20088:36#93
Tonal
>infoliokrat
>Дядько не тупи.
>По этой ссылке http://lj.rossia.org/users/yushi/35475.html несколькими
>строчками ниже:
>1. X <- 1, Q <- Y
>2. Если Q = 1, то успех: Y = X!
>3. Если Q делится на X нацело, то Q <- Q/X, X <- X+1, повторить все с шага 2.
>4. Иначе ошибка: Y не является факториалом никакого числа.
>
>Так что увы(или ура), но как говорится ВПРОЛЕТЕ!
Согласен 100% А как насчет 1994 года и немецко-русского словаря?
=A=L=X=Постоялецwww26 сен. 20088:39#94
infoliokrat

> НЕТ нет. Перевод дробной части заключается в том, что все 1 после запятой надо пересчитать, а полученное количество =натуральному числу даст цифры десятичной дроби только тогда, когда их записать в обратном порядке

А. Ну это сильно другое, да. Сильно другое и сильно ужасающее действие. Тут уже не позиционная система исчисления, не единичная, а хрен пойми что. Скорее алгоритм кодирования. =) Да еще и завязанный на десятичную систему. =) Т.е. без знания того что есть десятичная система исчисления и как она работает ты не сможешь дешифровать число. =) От чего бежал, к тому и прибежал.
0,1 в твоей системе равно 0,1 в десятичной
а может 0,1 в твоей системе равно 0,1 в двоичной, т.е. 0,5 в десятичной?
да может и так - смотря какую НЕСУЩУЮ систему исчисления взять для расшифровки дробной части твоей системы.
так какую же? как из записи 0,1(1) понять что это 0,1(10) или 0,1(2)=0,5(10)? Никак без указания по какой позиционной системе идет расшифровка дробной части.
т.е. твоя система не существовала бы без обычных позиционных систем, - она неполноценна, не самодостаточна.

Ну а диверсифицировать метод Кантора, единственное как я понял, ради чего ты завел свою систему, у тебя не получится, потому-что всегда можно сказать "а переведем ка все числа в 10-тичную систему, они ведь от этого своей числовости не потеряют, и повторим метод Кантора". Числа то универсальны, в отличие от систем исчисления. =)

=A=L=X=Постоялецwww26 сен. 20089:26#95
infoliokrat

ты задрал уже со своим обратным факториалом тоже. =) я нашел тот пост №48 о котором ты говорил в начале топика, что он привел тебя сюда.
давай еще раз убедимся, что это "великое" открытие вполне себе очевидная штука:

http://www.gamedev.ru/code/forum?id=60212&page=4

пост №48 araud - 23 янв. 2007  8:41
...
> как бы вы стали решать задачу обратного факториала, если бы у вас был только лист бумаги и ручка? Я буду в приятном шоке, если кто решит задачу не перебором.

пост №49 Дикая Кошка - 23 янв. 2007  10:12
...
> Делим на 2, 3, 4, и т.д. пока не разделится или не станет меньше очередного делителя.

Чуть больше часа потребовалось, чтобы "обратный факториал" был "изобретен" опять и снова. Ну тут можно конечно поставить тебе в заслугу что ты еще распространил его вычисление на произвольные числа, через какую-то аппроксимацию квадратным уравнением, это конечно замечательно и брутально, но что-то мне подсказывает, что рядом с Лапласом, Фурье и тем же Кантором твоё имя в математике не засветится ни разу. =)

btw

а я между прочим в своё время тоже "изобретал" функцию, которую никак не удосужился назвать. пусть будет ЮНИОПЕРАТОР
юниоператор нулевого порядка - это инкремент параметра x на 1.
UNIOP( x, , 0 ) = x + 1 (inc(x))
идея такова - юниоператор первого порядка обзаводится вторым параметром y и равен y раз - это инкремент(порядок - параметр). в сущности к x плюсуем y раз единицу, что в сущности же равно банальной сумме x и y
т.е. UNIOP( x, y, 1 ) = x + y
юниоператор второго порядка x от y, это мы выполняем юниоператор первого порядка x над x y раз - т.е. суммируем x с x y раз, нетрудно догадаться, что это у нас получается умножение:
UNIOP( x, y, 2 ) = x * y
и далее по универсальной формуле:
UNIOP( x, y, i ) = [ x <- UNIOP( x, x, i - 1 ) ] - повторяя это y раз
нетрудно догадаться, что UNIOP( x, y, 3 ) = x ^ y (икс в степени игрек)
а вот далее возведения в степень математика не уходит, а униоператор на коне! =)))
UNIOP( x, y, 4 ) - это число икс y раз возведенное в свою же степень - можно сказать ГИПЕРСТЕПЕНЬ
и так далее далее - до бесконечности =)))

повесим мой портрет на кафедре прикладной математики в рамочку вместо Фурье теперь? =)

SuslikМодераторwww26 сен. 200811:37#96
=A=L=X=
>UNIOP
да-да-да :) Лет десят назал пришла точно такая же мысль при прочтении статьи про суперстепень :D
TonalПостоялецwww26 сен. 200811:44#97
=A=L=X=
>повесим мой портрет на кафедре прикладной математики в рамочку вместо Фурье теперь? =)
Ненене, Фурье форева!
SuslikМодераторwww26 сен. 200811:51#98
Tonal
>Ненене, Фурье форева!
А =A=L=X=, блин, нет?)
TonalПостоялецwww26 сен. 200811:54#99
Suslik
ключевое слово <вместо>. )
SuslikМодераторwww26 сен. 200812:00#100
Tonal
Фурье уже отвисел своё - на стены вылазят новые светила науки :D
TonalПостоялецwww26 сен. 200812:05#101
//Ползут по стенам :D
ZonoIDПостоялецwww26 сен. 200812:12#102
Suslik
А Фурье литературные опусы писал? Если нет, то он отдыхает по сравнению с =A=L=X=.
=A=L=X=
Я готов повесить твою фотку над кроватью ;) Где взять ;)))))
SuslikМодераторwww26 сен. 200812:17#103
ZonoID
Изображение
[портрет]
keroseneПостоялецwww26 сен. 200813:08#104
Я фигею с вас люди!
Ну какая практическая польза от всего этого!?
Вот факториал вполне себе имеет применимость в комбинаторике - он показывает сколько разных перестановок дают неповторяющиеся объекты.
А то что вы тут понаизобретали - какая-то мозговая фрикция:)
Страницы: 16 7 8 921 Следующая »

/ Форум / Флейм / Общее

Тема в архиве.

2001—2018 © GameDev.ru — Разработка игр