Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Delphi программирование > Паскаль, Turbo Pascal, PascalABC.NET
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 16.03.2016, 19:28   #1
Pinguin007
Пользователь
 
Регистрация: 26.02.2016
Сообщений: 14
По умолчанию delphi из консоли в форму

как вот этот код переписать в форму:
program Project18;

{$APPTYPE CONSOLE}

uses
SysUtils,math;
var

a,b:real; { Границы отрезка }
r,r2:real; { Предыдущее и текущее приближенные значения интеграла}
n:integer; { Счетчик }
{ Интегрируемая функция }
function f(x:real):real;
begin
f:=3 * ln(x + 1) + sqrt(power(x+2, 3));
end;
{ Метод Симпсона }

function simpson(a,b:real;n:integer):real;
var
s:real; { Сумма }
h:real; { Шаг }
m:integer; { Счетчик }
mn:integer; { Очередной множитель }
begin
h:=(b-a)/(n-1); { Рассчитывается шаг }
s:=f(a)+f(b); { Начальное значение шага }
mn:=4; { Первый мнодитель - 4 }
{ Суммирование остальных элементов }
for m:=1 to n-2 do begin
s:=s+mn*f(a+h*m);
if (mn=4) then mn:=2 else mn:=4;{ Именение мноителя 2<>4 }
end;
simpson:=s*h/3; { Возвращается вычисленное значение }
end;

begin
{ TODO -oUser -cConsole Main : Insert code here }
write(' Введите A,B: ');
readln(a,b);
n:=3;
r:=simpson(a,b,n); { Начальное значение }
repeat
r2:=r; { Запоминается предыдущее значение }
n:=n+2; { Увеличивается количество шагов }
r:=simpson(a,b,n); { Рассчитывается новое значение }
until (abs(r-r2)<0.001);{ Повторяется до достижения необходимой
точности }
{ Вывод результатов }
writeln;
writeln(' Резльтат по методу Симпсона равен: ',r:6:3);
writeln(' для получения необходимой точности интервалбыл разбит на ');
writeln(n,' отрезков');
readln;
end.
Pinguin007 вне форума Ответить с цитированием
Старый 16.03.2016, 19:32   #2
min@y™
Цифровой кот
Старожил
 
Аватар для min@y™
 
Регистрация: 29.08.2014
Сообщений: 7,656
По умолчанию

Книжку по delphi читал?
Конечно нет, я, что, идиот?
Есть же форум с программёрами!
Расскажу я вам, дружочки, как выращивать грибочки: нужно в поле утром рано сдвинуть два куска урана...
min@y™ вне форума Ответить с цитированием
Старый 16.03.2016, 19:40   #3
vlad1389
Форумчанин
 
Регистрация: 02.02.2016
Сообщений: 290
По умолчанию

Pinguin007 тут халявщиков не жалуют. Тебе зачёт надо сдать а нам какой интерес до твоего зачёта? Никакого. Можешь остальным так и передать.
vlad1389 вне форума Ответить с цитированием
Старый 20.03.2016, 10:58   #4
newerow1989
Я самый любопытный
Участник клуба
 
Аватар для newerow1989
 
Регистрация: 24.07.2012
Сообщений: 1,949
По умолчанию

Код:
uses Math;

var
 a,b:real;
 r,r2:real;
 n:integer;

function f(x:real):real;
begin
  f:=3 * ln(x + 1) + sqrt(power(x+2, 3));
end;

function simpson(a,b:real;n:integer):real;
var
 s:real;
 h:real;
 m:integer;
 mn:integer;
begin
 h:=(b-a)/(n-1);
 s:=f(a)+f(b);
 mn:=4;
 for m:=1 to n-2 do begin
 s:=s+mn*f(a+h*m);
 if (mn=4) then mn:=2 else mn:=4;
 end;
 simpson:=s*h/3;
end;

procedure TForm1.Button1Click(Sender: TObject);
begin
 a:=StrToFloat(Edit1.Text);
 b:=StrToFloat(Edit2.Text);
 n:=3;
 r:=simpson(a,b,n);
 repeat
 r2:=r;
 n:=n+2;
 r:=simpson(a,b,n);
 until (abs(r-r2)<0.001);
 Label1.Caption:=' Резльтат по методу Симпсона равен: '+FloatToStr(r);
 Label2.Caption:=' для получения необходимой точности интервалбыл разбит на '+
    IntToStr(n)+' отрезков';
end;
С запрограммированным приветом, Неверов Евгений!
Сайт: http://newerow1989.ru
[Паскаль] [Delphi]
newerow1989 вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц

Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Перенос с консоли на форму вызвал ряд ошибок / С++ diha-o C/C++ Сетевое программирование 0 29.04.2014 23:18
Из консоли на форму (программа нахождения экстремума функции методом наискорейшего спуска) .FROST. C++ Builder 1 17.06.2013 13:18
перевести программку из консоли в форму larissia Помощь студентам 1 07.06.2012 19:14
Перенаправление потоков консоли в форму Radical_Edward Общие вопросы .NET 4 05.12.2010 12:43
Из консоли в форму Незлобин Помощь студентам 5 15.05.2010 13:44