![]() |
|
|
|||||||
| Регистрация | << Правила форума >> | FAQ | Пользователи | Календарь | Поиск | Сообщения за сегодня | Все разделы прочитаны |
![]() |
|
|
Опции темы | Поиск в этой теме | Опции просмотра |
|
|
|
#1
|
|||
|
|||
|
Даны действительные числа *n* и *x* (вводятся в edit'ы) получить то,что на рисунке.Предусмотреть функции для факториала и степени.
Вот то ,что я намалевал Код:
function factorial(n:integer):integer ;
begin
if n>1 then
factorial:=n*factorial(n-1) ;
if (n>(-1) and (n<2) then
factorial:=1
end;
end.
procedure TForm1.Button1Click (Sender;TObject);
var x,t : real
s,n : integer ;
begin
n:=strtoint (Edit1.Text) ;
x:=strtofloat (Edit2.Text) ;
s:= (-1) ;
while s<=10 do
begin
s:=s+1 ;
t:=(1/factorial(s)*factorial(n+s))*exp((2*s+n)*(n(x/2))) ;
Edit3.Text:= floattostr(t) ;
end;
end;
end.Собственно два оч серьезных недочета ,не предусмотрена функция для степени и сама программа не считает сумму ,получается ерунда какая то очень прошу приведите кто нибудь пожалуйста в человеческий вид=== Сорри (( буду знать Последний раз редактировалось Burk, 16.01.2010 в 12:58. |
|
#2
|
|||
|
|||
|
Код:
function factorial(n:integer):integer ;
begin
if n>1 then
factorial:=n*factorial(n-1) ;
if (n>(-1)) and (n<2) then
factorial:=1 ;
end;
function stepen(x:real;y:integer):real ;
begin
stepen:=exp(y*ln(x)) ;
end ;
procedure TForm1.Button1Click(Sender: TObject);
var x,t,r : real ;
s,n : integer ;
begin
n:=strtoint (Edit1.Text) ;
x:=strtofloat (Edit2.Text) ;
s:= (-1) ;
r:= 0 ;
while s<10 do
begin
s:=s+1 ;
t:=(1/(factorial(s)*factorial(n+s)))*stepen((x/2),(2*s+n)) ;
r:=r+t ;
end;
Edit3.Text:= floattostr(r) ;
end;
end. |