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

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

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

Восстановить пароль

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

Ответ
 
Опции темы Поиск в этой теме
Старый 16.11.2012, 21:55   #1
Dimabara
Пользователь
 
Регистрация: 15.10.2012
Сообщений: 33
Смущение Ребятушки задание повышенной сложности (Delphi)

program Project2;

{$APPTYPE CONSOLE}
{48. Не используя стандартные функции (за исключением abs),
вычислить с точностью eps = 0.0001 (х ввести с клавиатуры):
а) e ^ x = 1 + x / 1! + x2 / 2! + ... + xn / n! + ...;
Считать, что требуемая точность достигнута, если очередной слагаемое по модулю меньше
eps, - все последующие слагаемые можно уже не учитывать.}

uses
SysUtils;

var
fact,n,y,e,x:real;

const
eps=0.0001;
begin
writeln('input x');
read(x);
n:=0;
y:=0;
fact:=1;
while
if abs((1/fact)) > eps then
begin
n:=n+1;
fact:=fact*n;
y:=(e^x)+(1/fact);
else
writeln(e);
readln;
end;
end.

[Error] Project2.dpr(29): Pointer type required
[Error] Project2.dpr(33): Type of expression must be BOOLEAN

я просто плаваю с этим заданием

Последний раз редактировалось Dimabara; 16.11.2012 в 22:01. Причина: забыл указать язык программирования
Dimabara вне форума Ответить с цитированием
Старый 16.11.2012, 22:00   #2
BDA
МегаМодератор
СуперМодератор
 
Аватар для BDA
 
Регистрация: 09.11.2010
Сообщений: 7,430
По умолчанию

Код:
var
  s, x, a: real;
  n: longint;

const
  eps = 0.0001;

begin
  writeln('input x');
  readln(x);
  n := 0;
  s := 0;
  a := 1;
  while abs(a) > eps do
  begin
    s := s + a;
    inc(n);
    a := a * x / n;
  end;
  writeln(s);
  readln;
end.
Пишите язык программирования - это форум программистов, а не экстрасенсов. (<= это подпись )
BDA вне форума Ответить с цитированием
Старый 16.11.2012, 22:04   #3
Dimabara
Пользователь
 
Регистрация: 15.10.2012
Сообщений: 33
По умолчанию

спасибо
но что значат переменные s и а ?

Последний раз редактировалось Dimabara; 16.11.2012 в 22:07.
Dimabara вне форума Ответить с цитированием
Старый 16.11.2012, 22:06   #4
BDA
МегаМодератор
СуперМодератор
 
Аватар для BDA
 
Регистрация: 09.11.2010
Сообщений: 7,430
По умолчанию

В s как раз и будет e^x - сумма ряда.
a - текущий элемент ряда.
Пишите язык программирования - это форум программистов, а не экстрасенсов. (<= это подпись )
BDA вне форума Ответить с цитированием
Старый 16.11.2012, 22:18   #5
Dimabara
Пользователь
 
Регистрация: 15.10.2012
Сообщений: 33
По умолчанию

еще один вопрос
каким образом на наш ответ влияет eps и вообще для чего он в условии задачи нужен?
Dimabara вне форума Ответить с цитированием
Старый 16.11.2012, 22:34   #6
BDA
МегаМодератор
СуперМодератор
 
Аватар для BDA
 
Регистрация: 09.11.2010
Сообщений: 7,430
По умолчанию

eps обязательно нужен - без него цикл не закончится.
Чем больше eps, тем менее точный ответ будет получен.
Факториал растет быстрее числа в степени. В конце концов текущий элемент станет настолько маленьким, что почти не будет влиять на сумму.
Пишите язык программирования - это форум программистов, а не экстрасенсов. (<= это подпись )
BDA вне форума Ответить с цитированием
Ответ


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

Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Ребятушки не в службу,а в дружбу!Написать процедуру, позволяющую распознавать числа палиндрома (четырехзначные) Napo Помощь студентам 0 02.11.2012 22:12
Ребятушки, спасайте (С/С++) =( komoklie Помощь студентам 1 13.06.2011 12:00
Сложности с .htaccess xxNpCxx PHP 6 13.02.2011 21:30
Сложности с запросом Kolik317 БД в Delphi 5 19.08.2009 12:09
Сложности с вычислениями Adlar Microsoft Office Access 0 23.06.2009 22:20