Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > IT форум > Помощь студентам
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 06.06.2017, 22:10   #1
Rezcik
 
Регистрация: 30.01.2017
Сообщений: 5
По умолчанию Нахождение суммы ряда. Рекурсия. С++

Вычислить значение математических функций по их разложению в ряд. Ограничение: циклы не использовать. Написал программу на PASCAL. Помогите написать на С++.

Код:
var p, x, s, eps : real; i,k: integer;
begin
 write('Введите точность вычислений eps: '); read(eps);
 write('Введите переменную: '); read(x);
 s:=-0.5; p:=-0.5; i:=0; k:=0;
 if abs(x)>=1 then writeln('Число по модулю должно быть меньше единицы!') else
  while abs(p)>=eps do 
  begin
      i:=i+1;
      p:=-p*(x*x)/(2*i+1)/(2*i+2);
      s:= s+p;
  end;
  writeln('Ряд: ', s);
  writeln('Стандартная функция: ', (cos(x)-1)/(x*x));
end.
Изображения
Тип файла: png Безымянный.png (1.8 Кб, 96 просмотров)
Rezcik вне форума Ответить с цитированием
Старый 06.06.2017, 23:55   #2
Sciv
Старожил
 
Аватар для Sciv
 
Регистрация: 16.05.2012
Сообщений: 3,211
По умолчанию

Цитата:
Сообщение от Rezcik Посмотреть сообщение
Ограничение: циклы не использовать
и

Цитата:
Сообщение от Rezcik Посмотреть сообщение
Код:
while abs(p)>=eps do

А Вы уверены, что правильно написали?

В теме есть слово "Рекурсия", в задании очевидно предполагается решение рекурсией... в коде нет ни следа рекурсии.

Ещё смущает вот это странное условие:

Цитата:
Сообщение от Rezcik Посмотреть сообщение
Код:
if abs(x)>=1 then writeln('Число по модулю должно быть меньше единицы!')
Оно больше применимо к эпсилону, ибо на икс в задании никаких ограничений не накладывается (ну кроме разве что x = 0).
Начал решать проблему с помощью регулярных выражений. Теперь решаю две проблемы...

Последний раз редактировалось Sciv; 06.06.2017 в 23:59.
Sciv вне форума Ответить с цитированием
Старый 07.06.2017, 12:19   #3
Rezcik
 
Регистрация: 30.01.2017
Сообщений: 5
По умолчанию

В задании для Pascal не нужно было рекурсию, а для С++ наоборот.
А насчет условия на |X| это тоже в задачи для Pascal сказано было.
Rezcik вне форума Ответить с цитированием
Старый 07.06.2017, 13:12   #4
Sciv
Старожил
 
Аватар для Sciv
 
Регистрация: 16.05.2012
Сообщений: 3,211
По умолчанию

ОК, ясно. А в Си что не получается?

Для работы с матфункциями нужно сделать #include math.h.
Для ввода - вывода: stdio.h или iostream.h

Вместо бегин-энд - скобки {}

Условие для рекурсии:

Код:
double <Ваша функция>(double Argument){
...
if (abs(p)>=eps) <Ваша функция>(i) else return s;
...
}
Начал решать проблему с помощью регулярных выражений. Теперь решаю две проблемы...

Последний раз редактировалось Sciv; 07.06.2017 в 13:15.
Sciv вне форума Ответить с цитированием
Старый 07.06.2017, 14:06   #5
p51x
Старожил
 
Регистрация: 15.02.2010
Сообщений: 15,709
По умолчанию

Цитата:
Для работы с матфункциями нужно сделать #include math.h.
Лучше cmath

Цитата:
iostream.h
Откуда вы выкопали такой древний кусок г... Закопайте его обратно.
p51x вне форума Ответить с цитированием
Старый 07.06.2017, 14:08   #6
Sciv
Старожил
 
Аватар для Sciv
 
Регистрация: 16.05.2012
Сообщений: 3,211
По умолчанию

Цитата:
Сообщение от p51x Посмотреть сообщение
Откуда вы выкопали такой древний кусок г... Закопайте его обратно.
Ну ему же не промышленный проект разрабатывать, а лабу писать :D
Начал решать проблему с помощью регулярных выражений. Теперь решаю две проблемы...
Sciv вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Рекурсия для вычисления суммы ряда malikon Помощь студентам 3 02.05.2014 20:46
нахождение суммы нескончаемого ряда тейлора Катя Миронова Помощь студентам 0 03.03.2013 17:07
Нахождение суммы членов ряда vinci Общие вопросы C/C++ 0 16.03.2012 13:49
Нахождение конечной суммы ряда Su-34 Помощь студентам 1 21.12.2011 12:52
[Delphi] Нахождение суммы ряда? Yanahant Помощь студентам 1 07.05.2009 01:56