Форум программистов, компьютерный форум CyberForum.ru

С++ для начинающих

Войти
Регистрация
Восстановить пароль
 
Рейтинг: Рейтинг темы: голосов - 31, средняя оценка - 4.65
Koss
1 / 1 / 0
Регистрация: 28.03.2010
Сообщений: 80
#1

Вычисление числа пи - C++

29.11.2011, 20:21. Просмотров 4959. Ответов 8
Метки нет (Все метки)

Всем доброго времени суток, подскажите как в моей программе получить более тысячи знаков после запятой при вычислении числа пи и записать их в файл? я просто не пойму какой тип переменной при этом должен быть?
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
#include <iostream>
#include <cmath>
#include <math.h>
 
using namespace std;
 
int main(){
 
double pi;
 
for(double i=0; i<10; i++){
pi += (1/(pow(16,i)))*(4/((8*i)+1) - 2/((8*i)+4) - 1/((8*i)+5) - 1/((8*i)+6));
cout<<"pi= "<<pi<<endl;
    }
}
Лучшие ответы (1)
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
29.11.2011, 20:21
Здравствуйте! Я подобрал для вас темы с ответами на вопрос Вычисление числа пи (C++):

Вычисление числа ПИ - C++
Помогите разобраться с заданием на языке C. http://dencom.nsknet.ru/_mod_files/ce_images/2009.png

Вычисление числа Пи - C++
Составить на языке C программу, которая по введённому N возвращает N-ю после запятой десятичную цифру числа Пи. На работу программа...

Вычисление числа П - C++
Нужна программа на C, вычисляющая число &quot;ПИ&quot; ну или хотя бы карказ ( с объяснением построчно, если можно )

Вычисление числа пи - C++
Короче, я полный ноль в СИ, и нужно решить такую задачку: Написать программу, которая вычисляет число «Пи» с заданной точностью...

Вычисление числа ПИ ( строки ) - C++
Добрый день, меня интересует каким образом вычислять число пи через строки. Т.е каким образом получают 2 трилиона знаков после запятой (...

Вычисление факториала числа N - C++
Что надо написать в пропущенной строке? setlocale(LC_ALL, &quot;Russian&quot;); int N; int P=1; cout&lt;&lt;&quot;Input N: &quot;; cin&gt;&gt;N; ...

Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Koss
1 / 1 / 0
Регистрация: 28.03.2010
Сообщений: 80
30.11.2011, 21:33  [ТС] #2
Актуально
Koss
1 / 1 / 0
Регистрация: 28.03.2010
Сообщений: 80
02.12.2011, 23:58  [ТС] #3
Цитата Сообщение от Koss Посмотреть сообщение
Всем доброго времени суток, подскажите как в моей программе получить более тысячи знаков после запятой при вычислении числа пи и записать их в файл? я просто не пойму какой тип переменной при этом должен быть?
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
#include <iostream>
#include <cmath>
#include <math.h>
 
using namespace std;
 
int main(){
 
double pi;
 
for(double i=0; i<10; i++){
pi += (1/(pow(16,i)))*(4/((8*i)+1) - 2/((8*i)+4) - 1/((8*i)+5) - 1/((8*i)+6));
cout<<"pi= "<<pi<<endl;
    }
}
вверх
valeriikozlov
Эксперт C++
4670 / 2496 / 321
Регистрация: 18.08.2009
Сообщений: 4,550
03.12.2011, 00:18 #4
Цитата Сообщение от Koss Посмотреть сообщение
я просто не пойму какой тип переменной при этом должен быть?
double Вам точно не подойдет. Тут нужна длинная арифметика. Поищите про нее даже на форуме много написано. (Сразу предупреждаю, сам писать по этой теме код не буду)
AncinetHero
49 / 49 / 3
Регистрация: 22.05.2011
Сообщений: 326
03.12.2011, 00:21 #5
А почему такой сложный код?

Не легче ли поделить 22 на 7?
diman94x
5 / 5 / 1
Регистрация: 13.06.2009
Сообщений: 67
03.12.2011, 00:24 #6
"long double" попробуйте.
valeriikozlov
Эксперт C++
4670 / 2496 / 321
Регистрация: 18.08.2009
Сообщений: 4,550
03.12.2011, 00:27 #7
Цитата Сообщение от AncinetHero Посмотреть сообщение
Не легче ли поделить 22 на 7?
наверное из-за точности. 22/7 - уже на третьей цифре после запятой дает не ту цифру...
Байт
Эксперт C
15984 / 10252 / 1536
Регистрация: 24.12.2010
Сообщений: 19,336
03.12.2011, 00:39 #8
Сообщение было отмечено автором темы, экспертом или модератором как ответ
Цитата Сообщение от diman94x Посмотреть сообщение
"long double" попробуйте.
Не поможет. Тут действительно нужна длинная арифметика, при чем весьма изощренная - плавающая.

Добавлено через 1 минуту
Цитата Сообщение от AncinetHero Посмотреть сообщение
Не легче ли поделить 22 на 7?
Занятно. Привет от дедушки Пифагора.
alkagolik
Заблокирован
03.12.2011, 01:24 #9
http://gmplib.org/
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
03.12.2011, 01:24
Привет! Вот еще темы с ответами:

Вычисление числа комбинаций - C++
Вопрос, конечно элементарный но сам запутался. Какое количество комбинаций можно получить из трех чисел. Вообщем похоже на бинарный код. ...

Вычисление факториала числа - C++
Маленькая программа вычисляет факториал числа, введенного пользователем, по формуле N! = N * (N – 1)!, где 0 != 1, и выводит его на экран. ...

Вычисление числа сочетаний из N по M - C++
Напишите программу для вычисления числа сочетаний из N по M. Число сочетаний определяется по формуле N!/(M!*(N-M)!, где N - количество...

Вычисление 10-го эквивалент 2-го числа - C++
Доброго времени суток. Выполняю задание написать программу переводящую число из 2-ой в 10-ую систему исчисления. Но столкнулся с...


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

Или воспользуйтесь поиском по форуму:
Yandex
Объявления
03.12.2011, 01:24
Ответ Создать тему
Опции темы

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