Форум программистов, компьютерный форум 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. Просмотров 2141. Ответов 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.
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
18.12.2012, 16:59
Здравствуйте! Я подобрал для вас темы с ответами на вопрос Рекурсия S=sqrt(1+sqrt(2+sqrt(3+.+sqrt(n) (C++):

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

Цикл: Для числа N вычислить значение следующего выражения: sqrt((1) + sqrt((2) + ... + sqrt(2 * N))) - C++
Как это решить? sqrt((1)+sqrt((2)+..+sqrt(2n)))

Вычислить значение выражения sqrt (2 + sqrt (2 + sqrt (2 ... sqrt2))), (n-слагаемых) - C++
Вычислить значение выражения sqrt (2 + sqrt (2 + sqrt (2 ... sqrt2))), (n-слагаемых),с помощью iostream, stdio.С помощью цикла for або while

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

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

[C++ Error] Sqrt x.cpp(16): E2268 Call to undefined function 'sqrt'. Что это за ошибка??? - C++
Когда я испльзую функцию sqrt() компилятор выводит: Sqrt x.cpp(16): E2268 Call to undefined function 'sqrt' Что это значит???

5
ArtMaster
26 / 24 / 3
Регистрация: 27.10.2012
Сообщений: 74
18.12.2012, 17:13 #2
C++
1
2
3
4
double sum=n;
for(int i=n-1;i<=0;i--){
sum = sqrt(i+sum);
}
0
vua72
415 / 415 / 85
Регистрация: 28.11.2010
Сообщений: 1,183
Завершенные тесты: 1
18.12.2012, 17:26 #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;
}
0
Dean/W
1 / 1 / 0
Регистрация: 16.05.2010
Сообщений: 64
18.12.2012, 17:35 #4
Можно было бы добавить setlocale(0, " ") или SetConsoleOutputCP1251 что бы на рус.
C++
1
float r_sqrt(int a, int n)
Компилятор говорит что ему надо long double для переменной "n"
0
ArtMaster
26 / 24 / 3
Регистрация: 27.10.2012
Сообщений: 74
18.12.2012, 17:45 #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
0
vua72
415 / 415 / 85
Регистрация: 28.11.2010
Сообщений: 1,183
Завершенные тесты: 1
18.12.2012, 18:40 #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;
}
0
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
18.12.2012, 18:40
Привет! Вот еще темы с ответами:

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

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

Вычислить: 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 - C++
Как в с прошрамме написать sqrt(2-x)? У меня sqrt не считает, может есть еще вариант как написать данное выражение?


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

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

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