![]() |
|
|
Регистрация | << Правила форума >> | 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. |