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

Арифметические операции, сумма ряда - C++

Войти
Регистрация
Восстановить пароль
Другие темы раздела
C++ Файловые потоки и строки в C++ http://www.cyberforum.ru/cpp-beginners/thread1198667.html
Входной текстовый файл содержит отрывок литературного произведения. Необходимо сформировать выходной файл по следующему принципу: после каждого слова w1 входного файла необходимо через пробел...
C++ C++ функции, решение задачи Помогите написать задачу http://www.cyberforum.ru/cpp-beginners/thread1198653.html
C++ Ввод координат вручную
Помогите пожалуйста сделать ввод координат вручную, а не рандомом /*Дано n точек на плоскости. Указать (n-1)-звенную несамопересекающуюся незамкнутую ломаную, проходящую через все эти точки...
C++. Непонятный символ C++
Что означает символ "&" в языке C++? Например, void move(int &a,int b) Можете дать ссылку на справку про синтаксис C++?
C++ Сортировать фамилию и возраст http://www.cyberforum.ru/cpp-beginners/thread1198633.html
Доброго времени суток, помогите решить задачу: На входе список пар, состоящих из фамилии и возраста. Каждая пара представлена на отдельной строке, и сначала строчными латинскими буквами записана...
C++ Какой вид сортировки? Ребят, подскажите пожалуйста,что это за вид сортировки, ну там пузырьком, быстрая и тому подобное. Первая функция сортировки.void Filevmestimost(stad **first, stad **close) //функция сортировки по... подробнее

Показать сообщение отдельно
yaStudent
2 / 2 / 0
Регистрация: 31.05.2014
Сообщений: 35

Арифметические операции, сумма ряда - C++

04.06.2014, 11:01. Просмотров 480. Ответов 9
Метки (Все метки)

Исправить и объяснить

Прошу о помощи.

Первая задача, выводит неверный результат:
Кликните здесь для просмотра всего текста
Циклом с параметром должна выполняться формула:
1/(1+1/2)/(2+4/8)...(n+2^n/n+1)
n вводится с клавиатуры
надо получить конечный результат
C++ (Qt)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
#include <iostream>
 
using namespace std;
 
int main()
{
  double n;
  cin>>n;
  double res=1.;
  double pow2=2.;
  for(int i=1;i<=n;i++)
  {
     res/=(i+pow2/(i+1));
     pow2*=2.;
  }
  cout<<res;
}
Вот замечание:
Решение не верно. Не верно записал формулы для вычисления. Такие задачи раскручивают с конца, с последней дроби: n+2^n/n+1
Для ее вычисления у вас все известно. А для вычисления самой верхней дроби известен только числитель. А ее знаменатель вычисляется через вложенную цепочку всех остальных дробей.


Вторая задача (с ней всё в порядке):
Кликните здесь для просмотра всего текста
C++ (Qt)
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
#include <iostream>
 
using namespace std;
 
int main()
{
    int        a, d, m, n, f = 0;
 
    
cin >> d;
 
    for ( a = d, m = n = 1; a /= 10; m *= 10, n++ );
 
    a = d;
    n /= 2;
    while ( n-- ) {
        f |= ((d / m) % 10) ^ (a % 10);
        m /= 10;
        a /= 10;
    }
 
    cout << (!f ? "Yes" : "No") << endl;
 
    return 0;
}

Необходимо подробно объяснить работу обоих программ, вот замечание:
При описании решения задачи следует отдельно выделить постановку задачи с указанием входных и выходных данных и метод решения задачи
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
 
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru