Программный продукт, осуществляющий решение задач по дисциплине "Численные методы"
Курсовой проект - Компьютеры, программирование
Другие курсовые по предмету Компьютеры, программирование
опустимый диапазон!,mtinformation,[mbok],0);(h=0) then // проверка шага(Введите допустимый шаг!,mtinformation,[mbok],0);:=0;a<=b+h/2 do // решение
y:=y+yy;
fx:=; // очистка переменной под формулу
for i:=1 to length(f) do(f[i]=x)or(f[i]=X) then:=fx+floattostr(a); // формирование формулы(f[i]=y)or(f[i]=Y) then:=fx+floattostr(y); // формирование формулы:=fx+f[i];;;;:=getformulavalue(fx); // вычисление полученной формулы:=yy*h;:=a+h; // следующий шаг;.Text:=floattostr(y); // выводим ответ;;// обработка исключенийEZeroDivide do // деление на ноль(Нет решения!,mtinformation,[mbok],0);;;Eoverflow do(Ошибка вычисления!,mtinformation,[mbok],0);;;EConvertError do(Данные введены некорректно!,mtinformation,[mbok],0);;;;;TForm33.Edit1KeyPress(Sender: TObject; var Key: Char);key of
0..9,#8:;
#13:edit3.SetFocus;
.,,:(length(edit1.text)=0)or
0)or((length(edit1.Text)=1)and(edit1.Text[1]=-))then:=chr(0);:=chr(44);;">(pos(,,edit1.Text)>0)or((length(edit1.Text)=1)and(edit1.Text[1]=-))then:=chr(0);:=chr(44);;
0then:=chr(0);;:=chr(0);;;TForm33.Edit2KeyPress(Sender:TObject;varKey:Char);keyof">-:length(edit1.Text)<>0 then:=chr(0);;:=chr(0);;;TForm33.Edit2KeyPress(Sender: TObject; var Key: Char);key of
0..9,#8:;
#13:edit1.SetFocus;
.,,:(length(edit2.text)=0)or
0)or((length(edit2.Text)=1)and(edit2.Text[1]=-))then:=chr(0);:=chr(44);;">(pos(,,edit2.Text)>0)or((length(edit2.Text)=1)and(edit2.Text[1]=-))then:=chr(0);:=chr(44);;
0then:=chr(0);;:=chr(0);;;TForm33.Edit5KeyPress(Sender:TObject;varKey:Char);:=chr(0);;TForm33.Edit3KeyPress(Sender:TObject;varKey:Char);keyof">-:length(edit2.Text)<>0 then:=chr(0);;:=chr(0);;;TForm33.Edit5KeyPress(Sender: TObject; var Key: Char);:=chr(0);;TForm33.Edit3KeyPress(Sender: TObject; var Key: Char);key of
#13:edit4.SetFocus;;;TForm33.Edit4KeyPress(Sender: TObject; var Key: Char);key of
0..9,#8:;
#13:edit6.SetFocus;
.,,:(length(edit4.text)=0)or
0)or((length(edit4.Text)=1)and(edit4.Text[1]=-))then:=chr(0);:=chr(44);;:=chr(0);;;TForm33.Button2Click(Sender:TObject);.Close;;TForm33.Edit6KeyPress(Sender:TObject;varKey:Char);keyof">(pos(,,edit4.Text)>0)or((length(edit4.Text)=1)and(edit4.Text[1]=-))then:=chr(0);:=chr(44);;:=chr(0);;;TForm33.Button2Click(Sender: TObject);.Close;;TForm33.Edit6KeyPress(Sender: TObject; var Key: Char);key of
0..9,#8:;
#13:button1.SetFocus;
.,,:(length(edit6.text)=0)or
0)or((length(edit6.Text)=1)and(edit6.Text[1]=-))then:=chr(0);:=chr(44);;">(pos(,,edit6.Text)>0)or((length(edit6.Text)=1)and(edit6.Text[1]=-))then:=chr(0);:=chr(44);;
0then:=chr(0);;:=chr(0);;;TForm33.Button3Click(Sender:TObject);.showmodal;;TForm33.Button3MouseMove(Sender:TObject;Shift:TShiftState;X,">-:length(edit6.Text)<>0 then:=chr(0);;:=chr(0);;;TForm33.Button3Click(Sender: TObject);.showmodal;;TForm33.Button3MouseMove(Sender: TObject; Shift: TShiftState; X,
Y: Integer);.HintColor:=clwhite;.HintPause:=700;.Hint:=Редактор формул;;
end.
unit Unit18; // Метод половинного деления
interface
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, StdCtrls, Parsing;
TForm34 = class(TForm)
Label1: TLabel;
GroupBox1: TGroupBox;
Label2: TLabel;
Label3: TLabel;
Edit1: TEdit;
Label4: TLabel;
Edit3: TEdit;
Label5: TLabel;
Edit4: TEdit;
Label6: TLabel;
Edit5: TEdit;
Button1: TButton;
Button2: TButton;
Edit2: TEdit;
Button3: TButton;
procedure Button2Click(Sender: TObject);// выход
procedure Button1Click(Sender: TObject);// выполнить расчет
procedure Edit1KeyPress(Sender: TObject; var Key: Char); // контроль ввода
procedure Edit2KeyPress(Sender: TObject; var Key: Char); // данных
procedure Edit4KeyPress(Sender: TObject; var Key: Char);
procedure Edit5KeyPress(Sender: TObject; var Key: Char);
procedure Edit3KeyPress(Sender: TObject; var Key: Char);
procedure Button3Click(Sender: TObject);
procedure Button3MouseMove(Sender: TObject; Shift: TShiftState; X,
Y: Integer);
private
{ Private declarations }
public
{ Public declarations }
end;
Form34: TForm34;Unit20_1;
999)or(b>999))or((a999))or((a<-999)or(b<-999)) then// проверка диапазона(Интервал превышает допустимый диапазон!,mtinformation,[mbok],0);c=0 then // проверка точности(Точность должна быть вида:+#13+0,1; 0,01; 0,001 и т.д.,mtinformation,[mbok],0);
else
begin
// уточняем знак введенных корней a и b
ffa:=;:=;i:=1 to length(f) do(f[i]=x) or (f[i]=X) then:=ffa+floattostr(a);:=ffb+floattostr(b);:=ffa+f[i];:=ffb+f[i];;;:=getformulavalue(ffa);:=getformulavalue(ffb);((fa>0)and(fb>0))or((fa<0)and(fb<0)) then
messagedlg(Действительные корни имеют одинаковые знаки,mtinformation,[mbok],0);
endfa>0 then:=a;:=b;:=b;:=a;;;
// уточняем кореньabs(aa-bb)>c do:=(aa+bb)/2;i:=1 to length(f) do(f[i]=x) or (f[i]=X) then:=fxn+floattostr(xn);:=fxn+f[i];;;:=getformulavalue(fxn);:=;fx>0 then begin:=xn;:=xn;;;
// выводим ответ.Text:=floattostr(xn);;;// обработка исключенийEZeroDivide do // деление на ноль(Нет решения!,mtinformation,[mbok],0);;;Eoverflow do(Ошибка вычисления!,mtinformation,[mbok],0);;;EConvertError do(Данные введены некорректно!,mtinformation,[mbok],0);;;;;TForm34.Edit1KeyPress(Sender: TObject; var Key: Char);key of
0..9,#8:;
#13:edit3.SetFocus;
.,,:(length(edit1.text)=0)or
0)or((length(edit1.Text)=1)and(edit1.Text[1]=-))then:=chr(0);:=chr(44);;">(pos(,,edit1.Text)>0)or((length(edit1.Text)=1)and(edit1.Text[1]=-))then:=chr(0);:=chr(44);;
0then:=chr(0);;:=chr(0);;;TForm34.Edit2KeyPress(Sender:TObject;varKey:Char);keyof">-:length(edit1.Text)<>0 then:=chr(0);;:=chr(0);;;TForm34.Edit2KeyPress(Sender: TObject; var Key: Char);key of
0..9,#8:;
#13:edit1.SetFocus;
.,,:(length(edit2.text)=0)or
0)or((length(edit2.Text)=1)and(edit2.Text[1]=-))then:=chr(0);:=chr(44);;">(pos(,,edit2.Text)>0)or((length(edit2.Text)=1)and(edit2.Text[1]=-))then:=chr(0);:=chr(44);;
0then:=chr(0);;:=chr(0);;;TForm34.Edit4KeyPress(Sender:TObject;varKey:Char);keyof">-:length(edit2.Text)<>0 then:=chr(0);;:=chr(0);;;TForm34.Edit4KeyPress(Sender: TObject; var Key: Char);key of
0,#8:;
1:(length(edit4.text)=0)or
0)or(pos(,,edit4.Text)=0)then:=chr(0);:=1;;">(pos(1,edit4.Text)>0)or (pos(,,edit4.Text)=0)then:=chr(0);:=1;;
#13:button1.SetFocus;
.,,:(length(edit4.text)=0)or
0)then:=chr(0);:=chr(44);;:=chr(0);;;TForm34.Edit5KeyPress(Sender:TObject;varKey:Char);:=chr(0);;TForm34.Edit3KeyPress(Sender:TObject;varKey:Char);keyof">(pos(,,edit4.Text)>0)then:=chr(0);:=chr(44);;:=chr(0);;;TForm34.Edit5KeyPress(Sender: TObject; var Key: Char);:=chr(0);;TForm34.Edit3KeyPress(Sender: TObject;