Автор Тема: с++  (Прочитано 2032 раз)

0 Пользователей и 1 Гость просматривают эту тему.

Оффлайн Иринки

  • Постоялец
  • ***
  • Сообщений: 132
    • Просмотр профиля
с++
« : 30 Ноября 2012, 00:32:24 »
решить задачу не используя операторы цикла
написать программу с рекурсивной функцией вычисляющей

написать программу на языке с++

Оффлайн tig81

  • Глобальный модератор
  • *****
  • Сообщений: 15181
    • Просмотр профиля
Re: с++
« Ответ #1 : 30 Ноября 2012, 01:13:40 »
Что делали? Что не получается?

Оффлайн Иринки

  • Постоялец
  • ***
  • Сообщений: 132
    • Просмотр профиля
Re: с++
« Ответ #2 : 30 Ноября 2012, 01:17:36 »
вот что у меня получилось
#include <iostream>
#include <cmath>
 
long double func(int n)
{
    if (n < 0)
        return -1.L;
    else
        return n ? sqrtl((long double) n + func(n - 1)) : 0.L;
}
 
int main()
{
    long double retval;
    if ( (retval = func(10)) != -1.L)
        std::cout << retval << '\n';
    else
        std::cerr << "error: value less of zero\n";
 
    std::cin.get();
    return 0;
}

а программа не идёт