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

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

Войти
Регистрация
Восстановить пароль
 
yaStudent
2 / 2 / 0
Регистрация: 31.05.2014
Сообщений: 35
#1

Прошу объяснить работу готовой программы - C++

06.06.2014, 21:01. Просмотров 835. Ответов 7
Метки нет (Все метки)

Что требуется:
При описании решения задачи следует отдельно выделить постановку задачи с указанием входных и выходных данных и метод решения задачи

Кликните здесь для просмотра всего текста
Условие:
Циклом с параметром должна выполняться формула:
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
#include <iostream>
using namespace std;
int main()
{
  double n;
  cin>>n;
  double res=1.;
  double pow2=2.;
for (int i=n; i>=0; i--)
{
res=(i+pow2/(i+1))*res;
}
res=1/res;
cout<<res;
}
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
06.06.2014, 21:01     Прошу объяснить работу готовой программы
Посмотрите здесь:

Объяснить работу программы - C++
Во введенном слове подсчитать количество различных пар букв. Например, в слове babacabacd 5 различных пар букв, ba – 3 пары, ac – 2 пары. ...

Объяснить работу программы - C++
Здравствуйте. Такая задача была: Нашёл на форуме подходящую рабочую программу, но не могу полностью понять (и объяснить), как она...

Рекурсия, объяснить работу программы - C++
Вообщем мое ( пока самостоятельное ) обучение продолжается и попал я вот на такую замечательную тему как: &quot;рекурсия&quot;. вообщем все действия...

Объяснить работу программы (структуры, файловый ввод/вывод) - C++
объясните программу чему равняется v0??? и зачем int v=111??? #include &lt;iostream&gt; #include &lt;fstream&gt; #include &lt;string&gt; using...

Объяснить работу программы (нахождение простых чисел, решето Эратосфена) - C++
Поясните как работает эта прога а именно : #include &lt;iostream&gt; #include &lt;conio.h&gt; using namespace std; int main() { ...

Прошу объяснить код С++ - C++
здравствуйте, прошу объяснить как для полного нуба простейшими словами данный кусок кода: y=150 (10010110 в двоичной) int y=150; ...

Прошу объяснить ввод символов - C++
Дело касается самых основ, но что-то ускользнуло от моего понимания. #include &lt;iostream&gt; using namespace std; int main() { ...

После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
MagdAmir
4 / 4 / 3
Регистрация: 30.05.2014
Сообщений: 36
06.06.2014, 21:19     Прошу объяснить работу готовой программы #2
Сообщение было отмечено автором темы, экспертом или модератором как ответ
Ну, во первых, в описании задачи неправильно указана формула либо неверен код (там не умножить на res, а делить на него)... А во вторых:

Объявляется переменная N, чтобы можно было записать туда значение, вводимое с клавиатуры.
Потом собственно считывается число с консоли и засовывается в ячейку N
Далее мы объявляем переменную res, которая на каждом шаге будет вычислять нам результат (отсюда и имя) I зависимой функции
Объявляем переменную pow2, которая отвечает нам за 2^N, а потому там в проге ее неправильно используют...нужно добавить возведение этого числа в степень I либо же сразу задать его таким, а потом в конце каждого хода делить на два.
Врубаем цикл, который и считает нам собственно функцию от конца, то есть начиная от N, идя соответственно к нулю. Когда ноль, значение как раз будет 1.
Дальше на кой-то черт 1 делять на то, что получилось... И выводят результат.
Конец.
yaStudent
2 / 2 / 0
Регистрация: 31.05.2014
Сообщений: 35
06.06.2014, 21:56  [ТС]     Прошу объяснить работу готовой программы #3
MagdAmir, по формуле надо сначала делением вычислить знаменатель, потом числитель (1) поделить на результат предыдущего вычисления.

Добавлено через 4 минуты
Вот так правильнее:
1/((1+1/2)/(2+4/8)...(n+2^n/n+1))
MagdAmir
4 / 4 / 3
Регистрация: 30.05.2014
Сообщений: 36
06.06.2014, 23:29     Прошу объяснить работу готовой программы #4
как минимум, забыта одна скобка в конце, и восьмерка не подходит под правило "n+1"
yaStudent
2 / 2 / 0
Регистрация: 31.05.2014
Сообщений: 35
08.06.2014, 23:30  [ТС]     Прошу объяснить работу готовой программы #5
Просьба подсказать, как это записать в виде математической формулы (типа, n=i-1)
C++ (Qt)
1
for (int i=n; i>=0; i--)
tegauss
30 / 24 / 24
Регистрация: 06.05.2014
Сообщений: 158
09.06.2014, 00:07     Прошу объяснить работу готовой программы #6
yaStudent, то, что Вы написали - это только цикл. Эквивалентная запись: i = [n..1]
yaStudent
2 / 2 / 0
Регистрация: 31.05.2014
Сообщений: 35
09.06.2014, 01:24  [ТС]     Прошу объяснить работу готовой программы #7
tegauss, я не понимаю этого, но в примере (в методичке приводится):
C++ (Qt)
1
2
3
4
for (i=1; i<=n; i++)
{y+=log(2+sin(x));
x+=h;
}
...который записывается как i=1,n-1

Вот полная запись цикла, который мне нужен:
C++ (Qt)
1
2
3
4
for (int i=n; i>=0; i--)
 {
    res=(i+pow2/(i+1))*res;
  }
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
09.06.2014, 10:00     Прошу объяснить работу готовой программы
Еще ссылки по теме:

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

Прошу объяснить смысл оператора int** - C++
Встретил в чужом коде следующй оператор: int** вот в таком контексте: (динамическое распределение памяти): int** m = new int*; ...

непонятная для меня ошибка прошу объяснить знающих людей - C++
Я обращаюсь с проблемой во вроде бы рабочей программе. Задача была построить программу с сортировкой массивов методами пузырька и шейкера....

Объяснить работу функции - C++
Может кто объяснить работу функции void zagalovok() { Node *t; head=new Node(); t=head; int V; cout&lt;&lt;&quot;Введите...

Объяснить работу конструктора - C++
простите за тупое название темы Добрый вечер, возникла проблема в изучении деструкторов целом проблема не самое в деструкторов, а в...


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

Или воспользуйтесь поиском по форуму:
MagdAmir
4 / 4 / 3
Регистрация: 30.05.2014
Сообщений: 36
09.06.2014, 10:00     Прошу объяснить работу готовой программы #8
Сообщение было отмечено автором темы, экспертом или модератором как ответ
так и пишите:
i = n, 0

Можно даже с верхним подчеркиванием "n, 0", которое на математическом языке обозначает от первого до второго...
Yandex
Объявления
09.06.2014, 10:00     Прошу объяснить работу готовой программы
Ответ Создать тему
Опции темы

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