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

Выводит неточный результат - C++

Войти
Регистрация
Восстановить пароль
Другие темы раздела
C++ Натолкниве ребята на правильную идею. http://www.cyberforum.ru/cpp-beginners/thread215232.html
Нужно положить символы в двух мерный массив из файла. Посимвольно Не более 80 символов в строке Не более 1000 строк в файле
C++ Зачем нужен static Объясните зачем нужно объявлять перменные за типом статик, что это даёт я так и не понял. Почему объявлять нужно в классе, а потом ещё и за классом? class sova{ public: static int a; }; ... http://www.cyberforum.ru/cpp-beginners/thread215223.html
C++ Есть ли какая-то константа в С, означающая число Пи
Или может функция, возвращающая точное число Пи
Поиск в контейнере с указателями C++
Например, имеется класс, конструктор которого принимает два параметра. И контейнер - мультимножество, который хранит указатели на этот класс. class myclass { public: myclass(int,int); ////////...
C++ Компилятор С http://www.cyberforum.ru/cpp-beginners/thread215214.html
Добрый вечер! Мне нужен именно компилятор С, а не С++, но что-то никак не могу найти. Как я поняла исходники на С имеют расширение с, а у меня файлы создаются с расширением срр, значит это С++ Где...
C++ Замена строки в файле Помогите, пожалуйста, с алгоритмом или кодом решения следующей проблемы (на С или С++): есть обычный текстовый файл, в нем содержатся последовательность строк, допустим: груша яблоко апельсин... подробнее

Показать сообщение отдельно
valeriikozlov
Эксперт С++
4670 / 2496 / 321
Регистрация: 18.08.2009
Сообщений: 4,550
20.12.2010, 19:47
Для данного набора входных данных: 3.14 0.000001 типа int для вычисления факториала числа не хватает (функция factorial() возвращает отрицательное значение), пробуйте так:
C
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
#include <stdio.h>
#include <math.h>
double factorial(double a)// funcion factorial
{
double g=1;
for(int i=1; i<=a; i++)
{
g=g*i;
}
return(g);
}
 
int main()
{
FILE *f;
double x,eps;
f = fopen("input.txt","r");
fscanf(f,"%lf %lf", &x, &eps);
fclose(f);
double b=1.0;
 
double p;
int fl=1;
for(p=1; fl==1; p++)
{
b=b+pow(x,p)/factorial(p);
if(pow(x,p)/factorial(p)<eps)
        fl=0;
}
 
f = fopen("output.txt","w");
fprintf(f, "%.5lf", b);
fclose(f);
return 0;
}
1
 
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru