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

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

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

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

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

Ответ
 
Опции темы Поиск в этой теме
Старый 14.01.2012, 23:34   #1
spinogryz_ua
Форумчанин
 
Аватар для spinogryz_ua
 
Регистрация: 14.01.2012
Сообщений: 150
Лампочка Написание формулы на паскале.

пробовал уже как угодною. да все никак не выходит...

вот так она выглидит:


Помогите кто может

Последний раз редактировалось spinogryz_ua; 14.01.2012 в 23:41.
spinogryz_ua вне форума Ответить с цитированием
Старый 15.01.2012, 00:17   #2
whatever
a.k.a. Skull
Форумчанин
 
Регистрация: 17.11.2009
Сообщений: 963
По умолчанию

Код:
program Project1;

{$APPTYPE CONSOLE}

uses
  SysUtils,math;
function fact(n:integer):real;
begin
  if n<0 then
    begin
      writeln('косяк');
      readln;
      halt
    end;
  result:=1;
  if n<>0 then
    while n<>0 do
      begin
        result:=result*n;
        dec(n);
      end;
end;

function func(i,x:integer):real;
begin
  result:=(power(-1,i+1)*power(x,i+1)*ln(i+x))/(fact(i+1)+exp(i+x));
end;

{function func(i,x:integer):real;
begin
  result:=power(-1,i+1);
  result:=result*power(x,i+1)*ln(i+x);
  result:=result/(fact(i+1)+exp(i+x));
end;}

var
  x,i:integer;
begin
  x:=5;
  i:=4;
  writeln(func(i,x):0:7);
  readln;
end.
Б*я, на паскале же... Сейчас посмотрю, там пару строчек поправить нужно.

Update: на паскале так:
Код:
program Project1;

uses
  crt,math;
function fact(n:integer):real;
begin
  if n<0 then
    begin
      writeln('Косяк');
      readln;
      halt
    end;
  fact:=1;
  if n>0 then
    while n<>0 do
      begin
        fact:=fact*n;
        dec(n);
      end;
end;
                                    {
function func(i,x:integer):real;
begin
  func=(power(-1,i+1)*power(x,i+1)*ln(i+x))/(fact(i+1)+exp(i+x));
end;                               }  //лень было искать ошибку

function func(i,x:integer):real;
begin
  func:=power(-1,i+1);
  func:=func*power(x,i+1)*ln(i+x);
  func:=func/(fact(i+1)+exp(i+x));
end;

var
  x,i:integer;
begin
  clrscr;
  x:=5;
  i:=4;
  writeln(func(i,x):0:7);
  readln;
end.
P.S. ты в скайп стучался? Если что еще раз
Все тривиальное просто

Последний раз редактировалось whatever; 15.01.2012 в 00:35.
whatever вне форума Ответить с цитированием
Старый 15.01.2012, 00:43   #3
spinogryz_ua
Форумчанин
 
Аватар для spinogryz_ua
 
Регистрация: 14.01.2012
Сообщений: 150
По умолчанию

пишет "модуль 'math' не найден" =(
spinogryz_ua вне форума Ответить с цитированием
Старый 15.01.2012, 00:45   #4
whatever
a.k.a. Skull
Форумчанин
 
Регистрация: 17.11.2009
Сообщений: 963
По умолчанию

Ты в чем пишешь? Если что скачай нормальный FPS, я на нем проверял.
Все тривиальное просто
whatever вне форума Ответить с цитированием
Старый 15.01.2012, 00:51   #5
Базиля
Участник клуба
 
Аватар для Базиля
 
Регистрация: 03.12.2009
Сообщений: 1,013
По умолчанию

Убери подключение этого модуля.
Базиля вне форума Ответить с цитированием
Старый 15.01.2012, 00:54   #6
whatever
a.k.a. Skull
Форумчанин
 
Регистрация: 17.11.2009
Сообщений: 963
По умолчанию

Цитата:
Сообщение от Базиля Посмотреть сообщение
Убери подключение этого модуля.
А без него power разве работает? Можно, конечно, возвести в степень посредствам цикла while, но это, извените, ананизм.
Все тривиальное просто

Последний раз редактировалось whatever; 15.01.2012 в 01:01.
whatever вне форума Ответить с цитированием
Старый 15.01.2012, 01:02   #7
Базиля
Участник клуба
 
Аватар для Базиля
 
Регистрация: 03.12.2009
Сообщений: 1,013
По умолчанию

Ох. На код то я и не смотрел.
Паскаль функции power не знает. Так что прийдется использовать exp(x*ln(y)). Где X - степень числа, Y - основание.
Базиля вне форума Ответить с цитированием
Старый 15.01.2012, 01:08   #8
whatever
a.k.a. Skull
Форумчанин
 
Регистрация: 17.11.2009
Сообщений: 963
По умолчанию

Цитата:
exp(x*ln(y))
Изящно... То ли не знал, то ли забыл :D Ну да, если нет возможности подключить модуль, то можно самому функцию power написать.
Все тривиальное просто
whatever вне форума Ответить с цитированием
Старый 15.01.2012, 01:15   #9
spinogryz_ua
Форумчанин
 
Аватар для spinogryz_ua
 
Регистрация: 14.01.2012
Сообщений: 150
По умолчанию

У меня вобщем то и вся проблема в том что бы просто перевести формулу в язык паскаля. а с кодами этими я вобще не знаком и кагбэ не полностью их понимаю...
spinogryz_ua вне форума Ответить с цитированием
Ответ


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



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
написание формулы в Excel Gro Помощь студентам 0 04.05.2011 21:57
Написание формулы для сводной таблицы garik_lg Microsoft Office Excel 0 20.12.2010 16:31
Помощь в написание формулы x_omega_x Microsoft Office Excel 1 07.07.2009 13:52
Написание формулы на C++ Noor Общие вопросы C/C++ 11 08.01.2007 14:15
написание формулы vladi Microsoft Office Excel 6 31.12.2006 18:16