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

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

Войти
Регистрация
Восстановить пароль
 
TheDanger227
6 / 6 / 1
Регистрация: 27.11.2012
Сообщений: 58
#1

Почему так? - C++

17.09.2013, 19:09. Просмотров 261. Ответов 9
Метки нет (Все метки)

Почему значение psumma равняется нулю?
C++
1
2
3
4
5
6
7
8
9
10
11
12
if (e>0)
    {   
        int k = 0;
        double psumma = -1;
        cout<<"k = "<<k<<"\t"<<""<<psumma<<"\n";
    while (abs(psumma)>e && k<= INT_MAX && (DBL_MAX - summa -psumma)>0)
        { 
            k++;
            psumma*=pow(x,4)*(1/((2*k+1)*(2*k+2)));
            cout<<"k = "<<k<<"\t"<<psumma<<"\n";
            summa+=psumma;
        }
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
17.09.2013, 19:09
Здравствуйте! Я подобрал для вас темы с ответами на вопрос Почему так? (C++):

Почему так работает, а так нет? - C++
так работает // Возведение b в степень s по модулю m float powmod(float b, long s) { float c=1; while (s) {

Почему так? - C++
Я вот уже довольно много времени читаю книги и разные коды по программированию, но все так и не понял. Почему хорошие программисты...

While и for, почему так? - C++
#include &lt;iostream&gt; using namespace std; #include &lt;conio.h&gt; int main() { for(int counter = 1;counter &lt;=10;counter++) ...

Подскажите почему так? - C++
Я конечно новичок в с++, но чего-то это уже совсем.. Почему строка cout &lt;&lt; 1/2; выводит &quot;0&quot; ?

Объясните почему так - C++
Когда я ввожу следующие числа: x = 2222222222 n = 3333333333 И x = 2222222221 (один знак поменяли) n = 3333333333 То...

Объясните почему так - C++
#include &lt;iostream&gt; using namespace std; #define MAT(a,b) a/b; int main() { cout&lt;&lt;2*MAT(2+5,3); return 0; } В тестах...

Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Croessmah
Модератор
Эксперт CЭксперт С++
13155 / 7418 / 831
Регистрация: 27.09.2012
Сообщений: 18,256
Записей в блоге: 3
Завершенные тесты: 1
17.09.2013, 19:13 #2
C++
1
(1/((2*k+1)*(2*k+2)))
как Вы думаете, какое значение получится в этой скобке, если k = 5 ?
TheDanger227
6 / 6 / 1
Регистрация: 27.11.2012
Сообщений: 58
17.09.2013, 19:15  [ТС] #3
1/132?
Все норм.
Пёс
228 / 76 / 4
Регистрация: 03.02.2013
Сообщений: 311
17.09.2013, 19:22 #4
Croessmah, 1/132
Croessmah
Модератор
Эксперт CЭксперт С++
13155 / 7418 / 831
Регистрация: 27.09.2012
Сообщений: 18,256
Записей в блоге: 3
Завершенные тесты: 1
17.09.2013, 19:24 #5
Цитата Сообщение от TheDanger227 Посмотреть сообщение
1/132?
Все норм.
Ну и сколько это будет?
Пёс
228 / 76 / 4
Регистрация: 03.02.2013
Сообщений: 311
17.09.2013, 19:26 #6
Croessmah, окккк)))) понял
TheDanger227
6 / 6 / 1
Регистрация: 27.11.2012
Сообщений: 58
17.09.2013, 19:27  [ТС] #7
Я там ошибся чуток psumma*=(pow(x,4)/81)*(1/((2*k+1)*(2*k+2)));
Будет конечно не очень хорошо 0.0075757575757575757575757575757575757575757575757575
Croessmah
Модератор
Эксперт CЭксперт С++
13155 / 7418 / 831
Регистрация: 27.09.2012
Сообщений: 18,256
Записей в блоге: 3
Завершенные тесты: 1
17.09.2013, 19:28 #8
Цитата Сообщение от TheDanger227 Посмотреть сообщение
Будет конечно не очень хорошо 0.0075757575757575757575757575757575757575757575757575
Да ладно?
Целочисленное делите на целочисленное, так что результат 1/132 будет равен нулю!
Пёс
228 / 76 / 4
Регистрация: 03.02.2013
Сообщений: 311
17.09.2013, 19:28 #9
TheDanger227, в с++ 1/132 равна нулю.
TheDanger227
6 / 6 / 1
Регистрация: 27.11.2012
Сообщений: 58
17.09.2013, 19:32  [ТС] #10
Спасибо ребят. Первые шаги
Исправил на
C++
1
psumma*=pow(x,4)/(81*(2*k+1)*(2*k+2))
заработало
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
17.09.2013, 19:32
Привет! Вот еще темы с ответами:

Бинарный код: почему так? - C++
Бинарный код числа 5 равен 111001. Не пойму, почему 111001 вместо 001001? Что означают первые две единицы? Почему не нули вместо первых...

потоки почему так происходит ? - C++
Господа делаю воспроизведение основной музыки в программе , а затем в отдельный поток делаю воспроизвеление другого звука , так вот звук...

Не могу разобраться почему так - C++
Добрый вечер! Пишу программу, обычное задание из книги Прата. Суть задания: спомощью вложенных циклов, по запрашиваемому значению, вывести...

Почему так отображается массив? - C++
#include &lt;iostream&gt; #include &lt;stdio.h&gt; using namespace std; int main() { const int nstr=2, nstb=2; int mas; int i, j; ...


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

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

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