RSS    

   Курсовая работа: Программа для решения дифференциальных уравнений первого порядка методом Рунге-Кутта

{------------------------------------------------------------------------------}

if RadioGroup1.ItemIndex=11 then

begin

if x_rg=0 then

begin

ShowMessage('введите X1 не равное 0');

RadioGroup1.Enabled:=False;

RadioGroup1.ItemIndex:=31;

end

else

begin

Memo4.Clear;

Memo4.Lines.Add(' y*ctg(x) ');

f:=cot(x_rg)*y_rg;

Memo3.lines.Add(''+floattostr(f));

Button1.Enabled:=True;

RadioGroup1.Enabled:=False;

RadioGroup1.ItemIndex:=31;

end;

end;

{------------------------------------------------------------------------------}

if RadioGroup1.ItemIndex=12 then

begin

if x_rg=0 then

begin

ShowMessage('введите X1 не равное 0');

RadioGroup1.Enabled:=False;

RadioGroup1.ItemIndex:=31;

end

else

begin

Memo4.Clear;

Memo4.Lines.Add('(e^x-y)/x ');

f:=(exp(x_rg)-y_rg)/x_rg;

Memo3.lines.Add(''+floattostr(f));

Button1.Enabled:=True;

RadioGroup1.Enabled:=False;

RadioGroup1.ItemIndex:=31;

end;

end;

{------------------------------------------------------------------------------}

if RadioGroup1.ItemIndex=13 then

begin

if x_rg*y_rg<0 then

begin

ShowMessage('введите X1*Y(X1) >= 0');

RadioGroup1.Enabled:=False;

RadioGroup1.ItemIndex:=31;

end

else

begin

Memo4.Clear;

Memo4.Lines.Add('(x*y)^(1/2) ');

f:=power(x_rg*y_rg,1/2);

Memo3.lines.Add(''+floattostr(f));

Button1.Enabled:=True;

RadioGroup1.Enabled:=False;

RadioGroup1.ItemIndex:=31;

end;

end;

{------------------------------------------------------------------------------}

if RadioGroup1.ItemIndex=14 then

begin

Memo4.Clear;

Memo4.Lines.Add(' x+y ');

f:=x_rg+y_rg;

Memo3.lines.Add(''+floattostr(f));

Button1.Enabled:=True;

RadioGroup1.Enabled:=False;

RadioGroup1.ItemIndex:=31;

end;

{------------------------------------------------------------------------------}

if RadioGroup1.ItemIndex=15 then

begin

Memo4.Clear;

Memo4.Lines.Add(' x*y ');

f:=x_rg*y_rg;

Memo3.lines.Add(''+floattostr(f));

Button1.Enabled:=True;

RadioGroup1.Enabled:=False;

RadioGroup1.ItemIndex:=31;

end;

{------------------------------------------------------------------------------}

if RadioGroup1.ItemIndex=16 then

begin

Memo4.Clear;

Memo4.Lines.Add('e^(x*y) ');

f:=exp(x_rg*y_rg);

Memo3.lines.Add(''+floattostr(f));

Button1.Enabled:=True;

RadioGroup1.Enabled:=False;

RadioGroup1.ItemIndex:=31;

end;

{------------------------------------------------------------------------------}

if RadioGroup1.ItemIndex=17 then

begin

Memo4.Clear;

Memo4.Lines.Add('(e^x*y) ');

f:=exp(x_rg)*y_rg;

Memo3.lines.Add(''+floattostr(f));

Button1.Enabled:=True;

RadioGroup1.Enabled:=False;

RadioGroup1.ItemIndex:=31;

end;

{------------------------------------------------------------------------------}

if RadioGroup1.ItemIndex=18 then

begin

Memo4.Clear;

Memo4.Lines.Add('(x^2)*y ');

f:=power(x_rg,2)*y_rg;

Memo3.lines.Add(''+floattostr(f));

Button1.Enabled:=True;

RadioGroup1.Enabled:=False;

RadioGroup1.ItemIndex:=31;

end;

{------------------------------------------------------------------------------}

if RadioGroup1.ItemIndex=19 then

begin

Memo4.Clear;

Memo4.Lines.Add('-2*x+(2+x+x^2)*y^2 ');

f:=-2*x_rg+(2+x_rg+power(x_rg,2))*power(y_rg,2);

Memo3.lines.Add(''+floattostr(f));

Button1.Enabled:=True;

RadioGroup1.Enabled:=False;

RadioGroup1.ItemIndex:=31;

end;

{------------------------------------------------------------------------------}

if RadioGroup1.ItemIndex=20 then

begin

Memo4.Clear;

Memo4.Lines.Add('-x*y+(x+1)*y^2 ');

f:=-x_rg*y_rg+(x_rg+1)*power(y_rg,3);

Memo3.lines.Add(''+floattostr(f));

Button1.Enabled:=True;

RadioGroup1.Enabled:=False;

RadioGroup1.ItemIndex:=31;

end;

{------------------------------------------------------------------------------}

if RadioGroup1.ItemIndex=21 then

begin

Memo4.Clear;

Memo4.Lines.Add(' x^2*y^2 ');

f:=power(x_rg,2)*power(y_rg,2);

Memo3.lines.Add(''+floattostr(f));

Button1.Enabled:=True;

RadioGroup1.Enabled:=False;

RadioGroup1.ItemIndex:=31;

end;

{------------------------------------------------------------------------------}

if RadioGroup1.ItemIndex=22 then

begin

Memo4.Clear;

Memo4.Lines.Add(' e^(x-y) ');

f:=exp(x_rg-y_rg);

Memo3.clear;

Memo3.lines.Add(''+floattostr(f));

Button1.Enabled:=True;

RadioGroup1.Enabled:=False;

RadioGroup1.ItemIndex:=31;

end;

{------------------------------------------------------------------------------}

if RadioGroup1.ItemIndex=23 then

begin

if (x_rg=-y_rg) then

begin

ShowMessage('введите Y(x1)неравное X1');

RadioGroup1.Enabled:=False;

RadioGroup1.ItemIndex:=31;

end

else

begin

Memo4.Clear;

Memo4.Lines.Add('(x-(y/2))/(x+y) ');

f:=(x_rg-0.5*y_rg)/(x_rg+y_rg);

Memo3.clear;

Memo3.lines.Add(''+floattostr(f));

Button1.Enabled:=True;

RadioGroup1.Enabled:=False;

RadioGroup1.ItemIndex:=31;

end;

end;

{------------------------------------------------------------------------------}

if RadioGroup1.ItemIndex=24 then

begin

Memo4.Clear;

Memo4.Lines.Add('(x+1)*(y+1) ');

f:=(x_rg+1)*(y_rg+1);

Memo3.lines.Add(''+floattostr(f));

Button1.Enabled:=True;

RadioGroup1.Enabled:=False;

RadioGroup1.ItemIndex:=31;

end;

{------------------------------------------------------------------------------}

if RadioGroup1.ItemIndex=25 then

begin

Memo4.Clear;

Memo4.Lines.Add('x*e^(y) ');

f:=x_rg*exp(y_rg);

Memo3.lines.Add(''+floattostr(f));

Button1.Enabled:=True;

RadioGroup1.Enabled:=False;

RadioGroup1.ItemIndex:=31;

end;

{------------------------------------------------------------------------------}

if RadioGroup1.ItemIndex=26 then

begin

if (2*x_rg=-y_rg) then

begin

ShowMessage('введите Y(x1) неравное -2*X1');

RadioGroup1.Enabled:=False;

RadioGroup1.ItemIndex:=31;

end

else

begin

Memo4.Clear;

Memo4.Lines.Add('(x+1)/(2*x+y) ');

f:=(x_rg+1)/(2*x_rg+y_rg);

Memo3.lines.Add(''+floattostr(f));

Button1.Enabled:=True;

RadioGroup1.Enabled:=False;

RadioGroup1.ItemIndex:=31;

end;

end;

{------------------------------------------------------------------------------}

if RadioGroup1.ItemIndex=27 then

begin

if (x_rg=0)or(y_rg=0) then

begin

ShowMessage('введите Y(x1) неравное 0');

RadioGroup1.Enabled:=False;

RadioGroup1.ItemIndex:=31;

end

else

begin

Memo4.Clear;

Memo4.Lines.Add('((x+1)*(y^2))/x*y ');

f:=((x_rg+1)*power(y_rg,2))/x_rg*y_rg;

Memo3.lines.Add(''+floattostr(f));

Button1.Enabled:=True;

RadioGroup1.Enabled:=False;

RadioGroup1.ItemIndex:=31;

end;

end;

{------------------------------------------------------------------------------}

if RadioGroup1.ItemIndex=28 then

begin

if (x_rg=-y_rg) then

begin

ShowMessage('введите Y(x1) неравное -X1');

RadioGroup1.Enabled:=False;

RadioGroup1.ItemIndex:=31;

end

else

begin

Memo4.Clear;

Memo4.Lines.Add('(3.4-x*y)/(x+y) ');

f:=(3.4-x_rg*y_rg)/(x_rg+y_rg);

Memo3.lines.Add(''+floattostr(f));

Button1.Enabled:=True;

RadioGroup1.Enabled:=False;

RadioGroup1.ItemIndex:=31;

end;

end;

{------------------------------------------------------------------------------}

if RadioGroup1.ItemIndex=29 then

begin

if y_rg=0 then

begin

ShowMessage('введите Y(x1) не равное 0');

RadioGroup1.Enabled:=False;

RadioGroup1.ItemIndex:=31;

end

else

begin

Memo4.Clear;

Memo4.Lines.Add('y-2x/y ');

f:=y_rg-2*x_rg/y_rg;

Memo3.lines.Add(''+floattostr(f));

Button1.Enabled:=True;

RadioGroup1.Enabled:=False;

RadioGroup1.ItemIndex:=31;

end;

end;

{------------------------------------------------------------------------------}

if RadioGroup1.ItemIndex=30 then

begin

if y_rg=0 then

begin

ShowMessage('введите Y(x1) не равное 0');

RadioGroup1.Enabled:=False;

RadioGroup1.ItemIndex:=31;

end

else

begin

Memo4.Clear;

Memo4.Lines.Add(' x/y ');

f:=x_rg/y_rg;

Memo3.lines.Add(''+floattostr(f));

Button1.Enabled:=True;

RadioGroup1.Enabled:=False;

RadioGroup1.ItemIndex:=31;

end;

end

{------------------------------------------------------------------------------}

except

on EConvertError do // невозможно преобразовать строку символов в число

begin

MessageDlg('Некорректные значения переменных',mtError,[mbOk],0);

exit;

end;

end;

end;

//------------------------------------------------------------------------------

{Активация ввода образцовых функций}

Страницы: 1, 2, 3, 4, 5, 6, 7


Новости


Быстрый поиск

Группа вКонтакте: новости

Пока нет

Новости в Twitter и Facebook

                   

Новости

© 2010.