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

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

Войти
Регистрация
Восстановить пароль
 
Рейтинг: Рейтинг темы: голосов - 13, средняя оценка - 4.77
Mirazhana
1 / 1 / 0
Регистрация: 04.09.2012
Сообщений: 94
#1

Рекурсия S=sqrt(1+sqrt(2+sqrt(3+.+sqrt(n) - C++

18.12.2012, 16:59. Просмотров 2052. Ответов 5
Метки нет (Все метки)

Задали написать программу на С++ которая высчитывает S=sqrt(1+sqrt(2+sqrt(3+...+sqrt(n)))) .
Нашла похожу тему, но там программа на Паскале. Сама перевести с Паскаля на С++ не смогла, помогите кто может пожалуйста.
Pascal
1
2
3
4
5
6
7
8
9
10
11
12
13
var
n:integer;
s:real;
function r_sqrt(a,n:integer):real;
begin
     if a=0 then r_sqrt:=sqrt(n) else r_sqrt:=sqrt((n-a)+r_sqrt(a-1,n));
end;
 
begin
readln(n);
writeln(r_sqrt(n-1,n):3:4);
readln;
end.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
18.12.2012, 16:59     Рекурсия S=sqrt(1+sqrt(2+sqrt(3+.+sqrt(n)
Посмотрите здесь:

Рекурсия: вычислить значение выражения sqrt(1+sqrt(2+...sqrt(n))) - C++
Вычислить с помощью рекурсии и без нее - y(n) = sqrt(1+sqrt(2+...sqrt(n).. Как выполнить задание с помощью рекурсии? #include...

Дано натуральное число n. Вычислить sqrt(2+ sqrt(5 + sqrt(7...)) - C++
Дано натуральное число n.Вычислить sqrt(2+ sqrt(5 + sqrt(7...)). Под корнями располагается n первых простых чисел. Написал как находить...

Рекурсия: вычисление sqrt(1 + sqrt(2 + ... + sqrt(n))) - C++
Не подскажите как расписать рекурсивно формулу? Спасибо!

Вычислить y=sqrt(1+sqrt(4+sqrt(9+.+sqrt(36+sqrt(49) - C++
Помогите пожалуйста с решением данной задачи. \sqrt{1+\sqrt{4+\sqrt{9+...+\sqrt{36+\sqrt{49}}}}} Не совсем понимаю как решать... ...

Вычислить: sqrt(3+sqrt(6+.+sqrt(3*(n-1)+sqrt(3*n).) - C++
Здравствуйте! Вычислить: sqrt(3+sqrt(6+...+sqrt(3*(n-1)+sqrt(3*n)...))) Правильно ли делаю вычисления на NetBeans IDE 8.02?...

Вычислить: sqrt(k+sqrt(2k+...+sqrt(k(n-1)+sqrt(kn)))) - C++
Люди добрые! Помогите пожалуйста. Даны натуральные числа n и k. Вычислить: sqrt(k+sqrt(2k+...+sqrt(k(n-1)+sqrt(kn))))

После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
ArtMaster
26 / 24 / 3
Регистрация: 27.10.2012
Сообщений: 74
18.12.2012, 17:13     Рекурсия S=sqrt(1+sqrt(2+sqrt(3+.+sqrt(n) #2
C++
1
2
3
4
double sum=n;
for(int i=n-1;i<=0;i--){
sum = sqrt(i+sum);
}
vua72
415 / 415 / 85
Регистрация: 28.11.2010
Сообщений: 1,183
Завершенные тесты: 1
18.12.2012, 17:26     Рекурсия S=sqrt(1+sqrt(2+sqrt(3+.+sqrt(n) #3
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
#include <cstdio>
#include <cmath>
 
float r_sqrt(int a, int n)
{            
    if (a==0)  return sqrt(n);
    else return sqrt((n-a)+r_sqrt(a-1, n)); //3 4, 2 3. 1 2, 0 1
    
};
int main()
{
    int n;
    printf("Vvedite chislo: ");
    scanf("%d", &n);
    printf("Sqrt(%d)= %f",n, r_sqrt(n-1, n));
    return 0;
}
Dean/W
1 / 1 / 0
Регистрация: 16.05.2010
Сообщений: 64
18.12.2012, 17:35     Рекурсия S=sqrt(1+sqrt(2+sqrt(3+.+sqrt(n) #4
Можно было бы добавить setlocale(0, " ") или SetConsoleOutputCP1251 что бы на рус.
C++
1
float r_sqrt(int a, int n)
Компилятор говорит что ему надо long double для переменной "n"
ArtMaster
26 / 24 / 3
Регистрация: 27.10.2012
Сообщений: 74
18.12.2012, 17:45     Рекурсия S=sqrt(1+sqrt(2+sqrt(3+.+sqrt(n) #5
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
#include <iostream>
#include <math.h>
using namespace std;
 
int main(void)
{
    
    double sum=sqrt(4);
    int i=4-1;
    while(i>0){
        sum=sqrt(i+sum);
        i--;
        cout<<i<<"\n";
    }
    cout<<sum;
     
 
}
вместо 4 подставить n
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
18.12.2012, 18:40     Рекурсия S=sqrt(1+sqrt(2+sqrt(3+.+sqrt(n)
Еще ссылки по теме:

sqrt в c++ - C++
Подскажите - в чем проблема? Почему sqrt считает за ошибку? (17 строка) #include&lt;iostream&gt; #include&lt;cmath&gt; using namespace std;...

sqrt c++ - C++
Всем привет. Не могу понять в чём у меня ошибка...обычная формула нахождения длины вектора по его координатам. a = sqrt((x2-x1)^2 +...

sqrt - C++
Как в math реализовано вычисление квадратного корня?

sqrt - C++
Как в с прошрамме написать sqrt(2-x)? У меня sqrt не считает, может есть еще вариант как написать данное выражение?

Sqrt(double) - C++
Не могу понять, что это значит: double dist, sqrt(double); Понятно, что это объявление переменных, но зачем дабл в скобках?

Ругается на sqrt - C++
Компилятор ругается на функцию Sqrt() #include &lt;iostream&gt; #include &lt;cmath&gt; using namespace std; int main(void) { ...


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

Или воспользуйтесь поиском по форуму:
vua72
415 / 415 / 85
Регистрация: 28.11.2010
Сообщений: 1,183
Завершенные тесты: 1
18.12.2012, 18:40     Рекурсия S=sqrt(1+sqrt(2+sqrt(3+.+sqrt(n) #6
Цитата Сообщение от Dean/W Посмотреть сообщение
Можно было бы добавить setlocale(0, " ") или SetConsoleOutputCP1251 что бы на рус.
C++
1
float r_sqrt(int a, int n)
Компилятор говорит что ему надо long double для переменной "n"
Компиляторы разные бывают, тут же не экстрасенсы.

C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
float r_sqrt(int a, int n)
{            
    if (a==0)  return sqrt(1.0L*n);
    else return sqrt((n-a)+r_sqrt(a-1, n)); //3 4, 2 3. 1 2, 0 1
    
};
 
int _tmain(int argc, _TCHAR* argv[])
{
    int n;
    printf("Vvedite chislo: ");
    scanf("%d", &n);
    printf("Sqrt(%d)= %f",n, r_sqrt(n-1, n));
    return 0;
}
Yandex
Объявления
18.12.2012, 18:40     Рекурсия S=sqrt(1+sqrt(2+sqrt(3+.+sqrt(n)
Ответ Создать тему
Опции темы

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