forum.boolean.name

forum.boolean.name (http://forum.boolean.name/index.php)
-   Алгоритмика (http://forum.boolean.name/forumdisplay.php?f=21)
-   -   Как думает наш железный друг ? (http://forum.boolean.name/showthread.php?t=621)

Kain 25.01.2006 23:24

В данном топе хотелось бы обсудить бинарные алгоритмы
то как ето делает компьютер, а не то как мы пишем (sqr()...sar()...)
каков алгоритм извлечения кв.корня и не только кв. ?

Их реализация на Блице, мне например нужен корень 12 степени из 2
ето коофициент полутона в нотах.

SBJoker 26.01.2006 01:46

а в школу неходил вообще? корень 12й степени из 2 на блитце:
2^(1/12) 8)

alex-mad 26.01.2006 02:00

возми константу равную 1.05946309436 (точночть после запятой сам можешь выбрать)

а если интересно как машина считает корни, то это просто:
раскладывает корень в степяной ряд (так называемый "ряд Тейлора")
определяется точность... (до какого многослена складывать элементы)
после чего выполняется множество вачислений ( "+" , "-" , "*" , "/" , "^" (хотя степень - частный случай умнажения))

всё просто...

Код:

x^a = k * ( 1 + z )^a = k * ( 1 + a*z + a*( a-1 ) / 2 * z^2 + a*( a-1 )*( a-2 ) / z! *z^3 + ... ) , где z<1
______________n
(1+z)^a = 1 + E a*(a-1)*...*(a-i+1) / 2! * z^i , где z<1
_____________i=1


jimon 26.01.2006 13:29

ALU таит в себе много секретов :)

лутче бы спросил как калькулятор щитает корни

alex-mad 26.01.2006 21:37

Цитата:

Originally posted by jimon@Jan 26 2006, 12:29 PM
лутче бы спросил как калькулятор щитает корни

так же!
Код:

x^a = k * ( 1 + z )^a = k * ( 1 + a*z + a*( a-1 ) / 2 * z^2 + a*( a-1 )*( a-2 ) / z! *z^3 + ... ) , где z<1
______________n
(1+z)^a = 1 + E a*(a-1)*...*(a-i+1) / 2! * z^i , где z<1
_____________i=1


jimon 26.01.2006 22:23

также также... НЕ ТАКЖЕ !
калькулятор грохнется нафиг выщитывать до 15 знака по етому алгоритму !

смотреть по етой ссыле http://www.google.com/search?hl=ru&client=...D1%81%D0%BA&lr=

читать вот ето http://www.cp.eng.chula.ac.th/~krerk/publi.../iscit-sqrt.pdf

и вот ето http://www4.wittenberg.edu/academics/mathc.../ZuseZ3Talk.pdf

и ето незабудь http://www.iccd-conference.org/proce...5/71650526.pdf

если бы FPU и ALU современых процесоров очень бы тормозили етим методом проц

хотя я искал только по квадратному корню... дык... может быть n-ую степень и подругому ищут :(

ps. а я сначала схемы калькуляторов искал :)) запатентовались америкосы чтоб их

alex-mad 26.01.2006 22:35

http://www4.wittenberg.edu/academics/mathc.../ZuseZ3Talk.pdf
по этой ссылке на 3 странице 5-ым пунктом записана формула выше приведённая мною (только приятнее записано для машинного глаза, а я привёл пример приятнее для нашего глаза как приведено в учебника матана).
имхо это единственный алгоритм нахождения корня арифметическими действиями

jimon 26.01.2006 22:44

теперь ты понимаеш почему я написал 10 мс вместо 100 :))

jimon 26.01.2006 22:47

вчитался... там юзается 6 пункт

Kain 26.01.2006 22:47

спасибо alex-mad, все остальные хамы
SBJoker блиц пишет ответ 1.0 и все

jimon 26.01.2006 22:58

мдяяя :/

alex-mad 26.01.2006 23:12

Цитата:

Originally posted by jimon@Jan 26 2006, 09:47 PM
вчитался... там юзается 6 пункт

странный, действующий метод... мдя... это быстрее... странно, что машина так не считает... это ж быстрее, чем степенной ряд... бывает

alex-mad 26.01.2006 23:16

Цитата:

Originally posted by Kain@Jan 26 2006, 09:47 PM
спасибо alex-mad
пожалуста :) обращайся ещё


Часовой пояс GMT +4, время: 04:40.

vBulletin® Version 3.6.5.
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Перевод: zCarot