Добавил:
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:

2 сем / 7 лаба / 7.2 / Unit1

.pas
Скачиваний:
6
Добавлен:
18.07.2019
Размер:
1 Кб
Скачать
☆
unit Unit1;

interface

uses
  Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
  Dialogs, StdCtrls, Buttons, ExtCtrls, synta;

type
  TForm1 = class(TForm)
    le1: TLabeledEdit;
    btn1: TBitBtn;
    l1: TLabel;
    procedure btn1Click(Sender: TObject);
    procedure le1KeyPress(Sender: TObject; var Key: Char);
    procedure le1Change(Sender: TObject);
  private
    { Private declarations }
  public
    { Public declarations }
  end;

var
  Form1: TForm1;

implementation

{$R *.dfm}
procedure TForm1.le1KeyPress(Sender: TObject; var Key: Char);
begin
Control(Key, le1.Text);
end;

procedure TForm1.le1Change(Sender: TObject);
begin
btn1.Enabled:=Control2(le1.Text);
end;

procedure TForm1.btn1Click(Sender: TObject);
const n=30;
var a, x, S:real;
  k:byte; //счётчик счётного оператора цикла, должен быть целого типа
begin
x:=StrToFloat(le1.Text); //при x = 0 будет ошибка выполнения
a:=(Exp(x)+exp(-x))/81;
S:=a; //вычисление начальных значений до тела цикла
for k:=2 to n do //нач. (и конеч.) знач. номера слагаемого устанавл-ся в for
begin //начало тела цикла
 a:=(Exp(x/k)+exp(-x/k))/exp(ln(k+2)*4); //выч-е тек-го слаг. через самого себя предыдущ. итерации
 S:=S+a; //добавление слагаемого k-ой итерации к накапливаемой сумме
 end; //конец тела цикла; оператор for сам увеличит k на единицу
l1.Caption:='S='+FloatToStr(S); //вывод накопленной суммы
end; //конец процедуры


end.
 
Соседние файлы в папке 7.2
  • #
    18.07.2019188 б6Project1.dpr
  • #
    18.07.2019876 б6Project1.res
  • #
    18.07.20195 Кб6Unit1.dcu
  • #
    18.07.201951 б6Unit1.ddp
  • #
    18.07.2019925 б7Unit1.dfm
  • #
    18.07.20191 Кб6Unit1.pas