![]() |
|
|
Регистрация | << Правила форума >> | FAQ | Пользователи | Календарь | Поиск | Сообщения за сегодня | Все разделы прочитаны |
![]() |
|
Опции темы | Поиск в этой теме | Опции просмотра |
#1
|
|||
|
|||
![]() Что нужно дописать чтобы в Memo выводило количество знаков после запятой согласно введенному eps?
Вот код программы: Код:
procedure TfrmWhileRepeat.Button2Click(Sender: TObject); var u,sum,eps:real; i:integer; s:string; begin Memo1.Clear; eps:=strtofloat(edtEps2.Text); u:=1/2; sum:=2+1/2; i:=1; while u>eps do begin i:=i+1; u:=u/(i+1); sum:=sum+u; if CheckSteps.Checked then begin s:=format('%10.7f %10.7f',[u,sum]); Memo1.Lines.Add(s); end; end; edtResult2.Text:=floattostr(sum); edtControl2.Text:=floattostr(exp(1)); end; |
#2
|
||||
|
||||
![]() попробуй так:
Код:
uses ..., Math; ... function GetFloatDigitNum(Eps:extended; MinNum:byte=0):byte; var ds:byte; begin Result:=MinNum; if Eps<1 then begin ds:=Round(Abs(Math.Log10(eps))); if ds>MinNum then Result:=ds end; end; РГРТУ - ФВТ - Системы Автоматизированного ПРоектирования. ت |
#3
|
|||
|
|||
![]() Разобрался с выводом в Мемо.
|