Форум программистов, компьютерный форум, киберфорум
Наши страницы
Assembler: математика, вычисления
Войти
Регистрация
Восстановить пароль
 
Рейтинг 4.63/16: Рейтинг темы: голосов - 16, средняя оценка - 4.63
masterlomaster
11 / 11 / 0
Регистрация: 25.02.2011
Сообщений: 183
#1

Расчет числа пи.

18.12.2011, 20:19. Просмотров 2897. Ответов 4
Метки нет (Все метки)

Здравствуйте.

Хочу расчитать число пи, которое равняется 3,1415926535897932384626433832795…. . Пример во вложении.

Тут нужен сопроцессор ( в регистр такое число не получится записать, а вот в сопроцессор получится)
Сначало нужно решить вот в примере число Z , а потом подставить в формулу и уже работать с сопроцессором.
Правельно ли я рассуждаю?
1
Вложения
Тип файла: zip Рабочий стол.zip (4.1 Кб, 66 просмотров)
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
18.12.2011, 20:19
Ответы с готовыми решениями:

Расчет и вывод на экран первой и последней цифер числа 2^n
Составить программу, рассчитывающую и выводящую на экран первую и последнюю...

Бинарные числа! Перевод простого числа в бираное и расчет.
Здравствуйте!Я понимаю, что моя просьба банальна, но я правда не могу никак...

Расчет числа Шредера
Получается посчитать только до 18-го числа последовательности, нужно до 1000...

Расчет палиндрома числа 89
Всем привет. Ребят всю голову сломал, решая задачу - поиска бага в очередной...

Расчет цикломатического числа
Привет, форумчане! Делал себе дискетку и внезапно(!) наткнулся на непонятные...

4
Mikl___
Автор FAQ
11736 / 6047 / 544
Регистрация: 11.11.2010
Сообщений: 11,029
19.12.2011, 06:50 #2
masterlomaster, нет не правильно, в сопроцессоре есть команда fldpi загрузить Пи и если создать программу из двух команд
Assembler
1
2
3
fldpi ; загрузить в st(0) FPU число Пи
fstp X; поместить содержимое st(0) в переменную X
вывести на экран содержимое Х
то это и будет решением твоей задачи, но если ты любишь сложности, то вот несколько решений:
1) Архимед определил число Пи как
http://www.cyberforum.ru/cgi-bin/latex.cgi?3\frac{10}{71}<\pi <3\frac{10}{70}
поэтому выведи на экран число http://www.cyberforum.ru/cgi-bin/latex.cgi?\frac{223}{71} и этого будет достаточно
2) есть формула Грегори-Лейбница:
http://www.cyberforum.ru/cgi-bin/latex.cgi?\pi =4\sum_{k=0}^{\infty}\frac{(-1)^{k}}{2k+1}
3) формула Франсуа Виета
http://www.cyberforum.ru/cgi-bin/latex.cgi?\pi =\sqrt{12}\sum_{k=0}^{\infty}\frac{(-1)^{k}}{3^{k}(2k+1)}
4) Исаак Ньютон вывел формулу Пи для 15 расчетных цифр
http://www.cyberforum.ru/cgi-bin/latex.cgi?\pi =6\times \arcsin \frac{1}{2}
5) формула Римана
http://www.cyberforum.ru/cgi-bin/latex.cgi?\pi =\sqrt{\sum_{k=0}^{\infty}\frac{6}{k^2}}
чтобы получить Пи в сопроцессоре есть команда извлечения корня
5) формула Эйлера
http://www.cyberforum.ru/cgi-bin/latex.cgi?\frac{\pi }{4}=arctg(\frac{1}{2})+arctg(\frac{1}{3})
в сопроцессоре есть команды для извлечения арктангенса
6) формула Bailey–Borwein–Plouffe
http://www.cyberforum.ru/cgi-bin/latex.cgi?\pi =\sum_{k=0}^{\infty}\frac{1}{16^{k}}(\frac{4}{8k+1}-\frac{2}{8k+4}-\frac{1}{8k+5}-\frac{1}{8k+6})
Как сам видишь, эти формулы на много проще предложенной тобой формулы
2
taras atavin
4204 / 1765 / 211
Регистрация: 24.11.2009
Сообщений: 27,565
19.12.2011, 07:05 #3
Цитата Сообщение от Mikl___ Посмотреть сообщение
нет не правильно, в сопроцессоре есть команда fldpi загрузить Пи и если создать программу из двух команд
Если бы стояла задача только вывести число http://www.cyberforum.ru/cgi-bin/latex.cgi?\pi, то просто считаем заранее в готовой программе, или ищем в интернете, записываем в любой форме (хоть стринговой константой с терминальным нолём сразу в десятичном представлении) в файл данных, или самой программы и делаем вывод этого данного. Ему же надо это число вычислить, а для этого действительно могут лучше подойти вещественные регистры сопроцессора, чем целочисленные регистры центрального процессора. Почему именно вычислить -другой вопрос. Может его не устраивает точность доступных ему значений и он хочет сделать длинную вещественную арифметику на сопроцессоре и сам вычислить более точное значение? Или задача - просто понять, как это в принципе делается? Не где его взять, а именно как его получить? И вот здесь то в обоих случаях пригодится твой ответ об алгоритмах вычисления http://www.cyberforum.ru/cgi-bin/latex.cgi?\pi.
1
Mikl___
Автор FAQ
11736 / 6047 / 544
Регистрация: 11.11.2010
Сообщений: 11,029
19.12.2011, 09:18 #4
taras atavin,
masterlomaster хочет вывести число Пи на экран рассчитав его по формуле
http://www.cyberforum.ru/cgi-bin/latex.cgi?\pi =\frac{2\sqrt{11}}{11Z}, где
http://www.cyberforum.ru/cgi-bin/latex.cgi?Z =\sum_{n=0}^{\infty}\frac{(280n+19)(\frac{1}{2})_{n}(\frac{1}{4})_{n}(\frac{3}{4})_{n}}{(n!)^{3}99^{2n+1}}
Цитата Сообщение от taras atavin Посмотреть сообщение
Может его не устраивает точность доступных ему значений и он хочет сделать длинную вещественную арифметику на сопроцессоре и сам вычислить более точное значение? Или задача - просто понять, как это в принципе делается?
Я не экстрасенс, чтобы ответить на эти вопросы, но и не садист, в отличии от преподавателя, который дал такое задание, и не мазохист, чтобы выполнять подобные вещи
2
mmxkz
0 / 0 / 0
Регистрация: 16.12.2011
Сообщений: 1
19.12.2011, 17:13 #5
Сначала нужно задать точность с какой вы хотите вычислить число ПИ, после считать разницу значений для n и n+1, если она меньше точности, считать число ПИ с нужным n, если больше инкрементировать n, и считать заново.
сопроцессор использовать и для подсчета z и уже для подсчета ПИ.
0
19.12.2011, 17:13
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
19.12.2011, 17:13

Расчет апроксимации числа Пи
In this exercise we will calculate an approximation of π (Pi). The technique...

Расчет числа Фибоначчи на шаге n
Помогите пожалуйста,нужно написать программу для расчета числа Фибоначчи на...

Расчет факториала натурального числа n
Помогите, пожалуйста.. Составить программу для расчета факториала натурального...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
5
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2018, vBulletin Solutions, Inc.
Рейтинг@Mail.ru