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

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

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

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

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

Ответ
 
Опции темы Поиск в этой теме
Старый 08.10.2009, 20:48   #1
-SG-
Пользователь
 
Регистрация: 08.10.2009
Сообщений: 13
Радость Pascal; Задача с циклом (есть наработки...)

Помогите дорешать задачу, пожалуйста.

Вот условие:
Дaны нaтурaльнoе числo n и дейcтвитeльнoe чиcлo x. Вычиcлить:


Вот что пока есть:

Код:
function Factorial(f: word): LongInt;
  var Fact: longint;
  begin
    Fact:=1;
    If f=0 then exit;
    For f:=1 to f do
    Fact:=fact*f;
    Factorial:=fact;
  end;

begin
  Write('x=');
  ReadLn(x);
  Write('n=');
  ReadLn(n);
  For n:=1 to n do (1+(sin(x)/Factorial(n))) // Выражение неправильно, незнаю как записать.

end.
________________________
PS - надо еще переменных ввести для суммы...

Последний раз редактировалось Stilet; 09.10.2009 в 09:18.
-SG- вне форума Ответить с цитированием
Старый 08.10.2009, 21:02   #2
NeshSoft
Максим Николаев
Форумчанин
 
Аватар для NeshSoft
 
Регистрация: 15.02.2009
Сообщений: 170
По умолчанию

Код:
res:=1;
For i:=1 to n do res:=res*(1+sin(i*x)/Factorial(i))
NeshSoft. Программирование на заказ для студентов. Delphi/Pascal. Подробнее на сайте neshsoft.narod.ru
NeshSoft вне форума Ответить с цитированием
Старый 08.10.2009, 21:18   #3
-SG-
Пользователь
 
Регистрация: 08.10.2009
Сообщений: 13
По умолчанию

Код:
var x, n, Res: integer;

function Factorial(f: word): LongInt;
  var Fact: longint;
  begin
    Fact:=1;
    If f=0 then exit;
    For f:=1 to f do
    Fact:=fact*f;
    Factorial:=fact;
  end;

begin
  Write('x=');
  ReadLn(x);
  Write('n=');
  ReadLn(n);

  Res:=1;
  For n:=1 to n do Res:=Res*(1+(sin(n*x)/Factorial(n)));

  Write('Результат:',Res);
end.
___________________________________

Так?

Ошибки пишет:
[Pascal Warning] Project3.dpr(13): W1035 Return value of function 'Factorial' might be undefined
{вроде как значение функции 'Factorial' не получило определения}

[Pascal Error] Project3.dpr(26): E2010 Incompatible types: 'Integer' and 'Extended'
{Несовместимые типы}


Подскажите...

Последний раз редактировалось Stilet; 09.10.2009 в 09:18.
-SG- вне форума Ответить с цитированием
Старый 08.10.2009, 22:48   #4
Chudo4258
Форумчанин
 
Аватар для Chudo4258
 
Регистрация: 19.02.2009
Сообщений: 622
По умолчанию

в таких зачачашь не целесообразно использовать функцию факториал.
z - знаменатель множителя.

знаменатель следующего множителя = z*(z+1);

А в вашем случае знаменатель вычисляется:
z1=1
z2=1*2
z3=1*2*3
..............
zn=1*2*...*(n-1)*n.
Жми на весы!!!
Chudo4258 вне форума Ответить с цитированием
Старый 09.10.2009, 11:18   #5
NeshSoft
Максим Николаев
Форумчанин
 
Аватар для NeshSoft
 
Регистрация: 15.02.2009
Сообщений: 170
По умолчанию

Код:
var x, n,i: integer;
       res:real;

function Factorial(f: word): LongInt;
  var Fact,i: longint;
  begin
    Fact:=1;
    Factorial:=fact;
    If f=0 then exit;
    For i:=1 to f do
    Fact:=fact*i;
    Factorial:=fact;
  end;

begin
  Write('x=');
  ReadLn(x);
  Write('n=');
  ReadLn(n);

  Res:=1;
  For i:=1 to n do Res:=Res*(1+(sin(i*x)/Factorial(i)));

  Write('Результат:',Res);
end.
Цитата:
[Pascal Warning] Project3.dpr(13): W1035 Return value of function 'Factorial' might be undefined
значение функции может быть не определено, в вашем случае, если f=0, то выход из функции без её определения


Цитата:
[Pascal Error] Project3.dpr(26): E2010 Incompatible types: 'Integer' and 'Extended'
если на что то делите, то результат вещественное число, а не целое, вне зависимости от результата
NeshSoft. Программирование на заказ для студентов. Delphi/Pascal. Подробнее на сайте neshsoft.narod.ru
NeshSoft вне форума Ответить с цитированием
Старый 09.10.2009, 18:27   #6
-SG-
Пользователь
 
Регистрация: 08.10.2009
Сообщений: 13
По умолчанию

Благадарю за помощь!
Программу сдал. (щас нет возможности выложить код, если не забуду потом выложу...)
-SG- вне форума Ответить с цитированием
Ответ


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



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Паскаль, массивы, наработки есть. Otre4eHHbIu Помощь студентам 14 17.05.2009 01:16
Паскаль, массивы, наработки есть. Otre4eHHbIu Помощь студентам 3 12.05.2009 12:26
ПОСМОТРИТЕ, ПОЖАЛУЙСТА, ПРОГРАММЫ НА ЯЗЫКЕ ПАСКАЛЬ!! СРОЧНО!! ЕСТЬ НАРАБОТКИ) НАСТЯ 18:) Помощь студентам 33 10.05.2009 15:23
Задача с циклом for в c++ Many man Помощь студентам 5 14.12.2008 12:01
Задача с циклом POPOV Общие вопросы Delphi 13 01.02.2008 20:33