![]() |
|
|
Регистрация | << Правила форума >> | FAQ | Пользователи | Календарь | Поиск | Сообщения за сегодня | Все разделы прочитаны |
![]() |
|
Опции темы | Поиск в этой теме | Опции просмотра |
#1
|
|||
|
|||
![]() мне надо посчитать площадь треугольника по формуле s:=sqrt(r*(r-m)*(r-n)*(r-k)) где m,n,k - стороны треугольника, r - полупериметр треугольника. надо посчитать это через подпрограмму.
затем посчитать сумму и разность двух других через подпрограмму ![]() Код:
procedure TForm1.Button1Click(Sender: TObject); var a,b,c,p,l,f,S1,S2:real; Function SmaZz(m:real;n:real;k:real):real; var r,s:real; begin r:=(m+n+k)/2; s:=sqrt(r*(r-m)*(r-n)*(r-k)); end; begin a:=strtofloat(edit1.text); b:=strtofloat(edit2.text); c:=strtofloat(edit3.text); p:=strtofloat(edit4.text); l:=strtofloat(edit5.text); f:=strtofloat(edit6.text); S1:=SmaZz(a,b,c); S2:=SmaZz(p,l,f); Label9.caption:=' Сложение = '+floattostr(s1+s2)+#13+' Вычитание = '+floattostr(s1-s2) end; end. |
#2
|
|||
|
|||
![]() А какую ошибку-то дает?
|
#3
|
||||
|
||||
![]() Код:
Function SmaZz(m:real;n:real;k:real):real; var r:real; begin r:=(m+n+k)/2; SmaZz:=sqrt(r*(r-m)*(r-n)*(r-k)); end; ![]() Последний раз редактировалось Konrad, 02.04.2009 в 23:04. |
#4
|
|||
|
|||
![]() lmikle
он не правильно считает пишет что в когда сложение там число в 23 степени, а при вычитании 0 Konrad эт то спасиб просто первый раз с подпрограммами работаю Последний раз редактировалось SmaZz, 02.04.2009 в 23:07. |