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

Вычисление числа e, Pi с заданной точностью - C++

Восстановить пароль Регистрация
Другие темы раздела
C++ Переделать ввод / вывод с "C++" на "С" http://www.cyberforum.ru/cpp-beginners/thread126595.html
Здраствуйте, нашел здесь на форуме код написаный на С++ #include <iostream> int func_one (int, int, int); // по значению. int func_two (int &, int &, int &); // по ссылке. int main() { setlocale(LC_ALL, "Russian");
C++ В матрице размерами N*M определить максимальный элемент в каждой строке.. 1. В матрице размерами N*M определить максимальный элемент в каждой строке (N и M не больше 10). Матрицу сформировать из случайных чисел в диапазоне от –100 до 100. 2. Дана целочисленная квадратная матрица порядка n. Матрица сформирована из случайных чисел в диапазоне от –10 до 10. Заполнить нулями строку с минимальным средним значением элементов. помогите пожалуйста?) с++ http://www.cyberforum.ru/cpp-beginners/thread126587.html
C++ Вводится строка произвольного текста.
Вводится строка произвольного текста. Подсчитать количество цифр в данной строке. помогите пожалуйста c++ )
Записать в этот же массив сначала все положительные числа и нули, а затем все отрицательные C++
Дан массив из 25 вещественных чисел. Записать в этот же массив сначала все положительные числа и нули, а затем все отрицательные, сохраняя порядок из следования.
C++ Обработка текста http://www.cyberforum.ru/cpp-beginners/thread126537.html
Найти в тексте все слова, начинающиеся на заданную букву русского алфавита. Определить их количество. Намекните как делать?
C++ double в бинарный вид Добрый день! Подскажите пожалуйста как лучше сделать конвертацию double из десятичного в двоичный вид. Например чтобы из 1.0 получить 0x3FF0000000000000 а лучше 4 числа типа int равные 3FF0, 0, 0, 0. Замучил яндекс с гуглом-ничего путного не нашел. Нужно для записи в файл с помощью putw(). Может можно сразу писать в файл без промежуточного преобразования, но такого тоже не нашел. Спасибо. ... подробнее

Показать сообщение отдельно
MrakSPb
12 / 12 / 1
Регистрация: 14.12.2009
Сообщений: 8
07.05.2010, 14:44     Вычисление числа e, Pi с заданной точностью
Найти с заданной точностью (20-1000 знаков после запятой) одну из замечательных констант (например, e, π).

Из того что осилил сам:
Код
#include <iostream>
#include <conio.h>
#include <math.h>
using namespace std;

int main()
{
	setlocale(LC_ALL, "Russian");

	int n, i;
	double x = 1;
	long double e = 1;

	cout << "Введите количество знаков после запятой:" << endl;
	cin >> n;

	int *pi=new int[n];
	
	for (i=1;i<=n;i++) // ряд тейлора, за точность берем количество знаков после запятой :)
	{
		x = x*i;
		e = e + 1/x;
	}

	long double Var = e;
	
	double Stepen = 10;
	for (i=1;i<=n;i++) // записываем знаки после запятой в массив, размером n
	{
		pi[i-1] = int((Var - int(Var)) * 10);
		Var = e * pow(Stepen, i);
	}

	cout << e << endl;

	for (i=0;i<n;i++) cout << pi[i] << endl;
	getch();

    return 0;
}
Проблема в вычислении 10 и выше знака после запятой, видимо в long double, равно как и в double выделяется память только для 9 знаков после запятой (по крайней мере у меня получилось именно так). Как же быть?:confused:
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
 
Текущее время: 12:34. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru