Форум программистов, компьютерный форум, киберфорум
Наши страницы
С++ для начинающих
Войти
Регистрация
Восстановить пароль
 
Deamod1s
1 / 1 / 0
Регистрация: 28.10.2016
Сообщений: 9
1

Почему при ввводе маленьких чисел результат неправильный?

10.11.2016, 18:47. Просмотров 336. Ответов 2
Метки нет (Все метки)

Вот фрагмент кода:

C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
 {
 double x;
 double members;
 double sum = 0;
cout << "vvedite x: ";
cin >> x;
    
    int n = -1;
    do{
        n++;
        members = pow(x,2*n+1)/(2*n+1);
        sum += members;
 
        } while (members > 0.000005);
         cout << sum;
      return 0;
}
Дело в том,что когда я присваиваю иксу маленькие значения (например 0.0002),при первом проходе цикла значение переменных members и sum считает правильно,но при втором проходе(и последнем для значения 0.0002) значение переменной members считает правильно,а вот прибавить его к sum уже не может(sum остаётся с таким же значением,как при первом проходе цикла). Переполнения ведь не может происходить в этой переменной при таком значении.
0
QA
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
10.11.2016, 18:47
Ответы с готовыми решениями:

Почему в выходной файл выводит неправильный результат?
#include &lt;iostream&gt; #include &lt;fstream&gt; #include &lt;stdlib.h&gt; using namespace std; #pragma...

Найти максимальный элемент массива: неправильный результат, почему?
Почему выдает такой макс?? #include &lt;iostream&gt; #include &lt;windows.h&gt; #include &lt;ctime&gt; #include...

Произведение четных чисел до n (неправильный результат)
Здравствуйте. Мне по заданию надо написать программу,считающую произведение четных чисел до числа...

Генерация массива случайных чисел код выдаёт неправильный результат
Вот код : #include &lt;stdio.h&gt; #include &lt;iostream&gt; #include &lt;cstring&gt; #include &lt;cstdlib&gt;...

Неправильный результат при возведении числа в степень
#include&lt;stdio.h&gt; #include&lt;math.h&gt; main() { int n,a; scanf(&quot;%d&quot;,&amp;n); a=pow(2,n);...

2
nmcf
6535 / 5758 / 2622
Регистрация: 14.04.2014
Сообщений: 24,498
10.11.2016, 20:26 2
Ты просто видишь округлённый результат. setprecision() и fixed используй.
1
TheCalligrapher
С чаем беда...
Эксперт CЭксперт С++
5812 / 2803 / 769
Регистрация: 18.10.2014
Сообщений: 5,089
10.11.2016, 20:50 3
Цитата Сообщение от Deamod1s Посмотреть сообщение
а вот прибавить его к sum уже не может(sum остаётся с таким же значением,как при первом проходе цикла)
Это откуда такие сведения? Проверил - все прекрасно прибавляется к sum.
0
Answers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
10.11.2016, 20:50

Почему выдает неправильный результат
using System; using System.Collections.Generic; using System.Linq; using System.Text; using...

Почему программа выдаёт неправильный результат?
#include &lt;stdio.h&gt; int main() { float average; int counter, grade, total; // этап...

EF неправильный результат при добавлении
Короче Мужики такая беда,есть две таблицы Word и Vocabulary отношение 1:M,работаю с этой базой с...


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

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

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