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

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

Вернуться   Форум программистов > IT форум > Помощь студентам
Регистрация

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

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

Ответ
 
Опции темы Поиск в этой теме
Старый 30.01.2012, 15:02   #1
Olejas
Новичок
Джуниор
 
Регистрация: 30.01.2012
Сообщений: 2
Восклицание Разработать программу табулирования функции

Программирование циклических процедур. Табулирования функции на заданном интервале.
Разработать программу табулирования функции, вывести ее значение в компоненту Memo. Разработать три варианта вычисления с использованием трех видов циклов, для контроля подсчитать сумму значений функций. Значение интервала и шага табуляции ввести в компоненту StringGrid. Знак '^' означает 'в степени'.
Вывод в компоненту Memo должен быть в виде опрятной таблицы (как в консольном режиме). Пример программы для y = x ^ 2 прилагается (только исполняемый файл).
3. y = (Sin ^ 2x + 0.5) ^ 0.5; интервал: отрезок [0,0.2], шаг 0.025.
нужно срочно)
Olejas вне форума Ответить с цитированием
Старый 30.01.2012, 18:24   #2
puporev
Старожил
 
Регистрация: 13.10.2007
Сообщений: 2,740
По умолчанию

Как в консоли...
Код:
unit Unit1;

interface

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

type
  TForm1 = class(TForm)
    Memo1: TMemo;
    Memo2: TMemo;
    Memo3: TMemo;
    Label1: TLabel;
    Label2: TLabel;
    Label3: TLabel;
    Button1: TButton;
    procedure Button1Click(Sender: TObject);
    procedure FormCreate(Sender: TObject);
  private
    { Private declarations }
  public
    { Public declarations }
  end;

var
  Form1: TForm1;

implementation

{$R *.dfm}
function F(x:real):real;
begin
result:=sqrt(sqr(sin(x)+0.5));
end;
const xn=0;
      xk=0.2;
      h=0.025;

procedure TForm1.Button1Click(Sender: TObject);
var x,y,s:real;
    n,i:integer;
begin
Memo1.Lines.Add('----------------------');
Memo1.Lines.Add('| N |    X    |   F(x)  |');
Memo1.Lines.Add('----------------------');
n:=round((xk-xn)/h)+1;
s:=0;
for i:=1 to n do
 begin
  x:=xn+h*(i-1);
  y:=f(x);
  s:=s+y;
  Memo1.Lines.Add('| '+IntToStr(i)+' | '+FloatToStrF(x,fffixed,5,3)+
                   ' | '+FloatToStrF(y,fffixed,5,3)+' | ');
 end;
Memo1.Lines.Add('----------------------');
Memo1.Lines.Add('Сумма:     '+FloatToStrF(s,fffixed,5,3));
//цикл while
Memo2.Lines.Add('----------------------');
Memo2.Lines.Add('| N |    X    |   F(x)  |');
Memo2.Lines.Add('----------------------');
s:=0;
x:=xn;
n:=0;
while x<xk+h/2 do
 begin
  n:=n+1;
  y:=f(x);
  s:=s+y;
  Memo2.Lines.Add('| '+IntToStr(n)+' | '+FloatToStrF(x,fffixed,5,3)+
                   ' | '+FloatToStrF(y,fffixed,5,3)+' | ');
  x:=x+h;
 end;
Memo2.Lines.Add('----------------------');
Memo2.Lines.Add('Сумма:     '+FloatToStrF(s,fffixed,5,3));
//цикл repeat
Memo3.Lines.Add('----------------------');
Memo3.Lines.Add('| N |    X    |   F(x)  |');
Memo3.Lines.Add('----------------------');
s:=0;
x:=xn;
n:=0;
repeat
  n:=n+1;
  y:=f(x);
  s:=s+y;
  Memo3.Lines.Add('| '+IntToStr(n)+' | '+FloatToStrF(x,fffixed,5,3)+
                   ' | '+FloatToStrF(y,fffixed,5,3)+' | ');
  x:=x+h;
until x>xk+h/2;
Memo3.Lines.Add('----------------------');
Memo3.Lines.Add('Сумма:     '+FloatToStrF(s,fffixed,5,3));
end;
procedure TForm1.FormCreate(Sender: TObject);
begin
Memo1.Font.Name:='Courir New';
Memo2.Font.Name:='Courir New';
Memo3.Font.Name:='Courir New';
end;

end.
Вложения
Тип файла: rar Табуляция.rar (171.0 Кб, 33 просмотров)
puporev вне форума Ответить с цитированием
Ответ


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



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Табулирования функции. pokerg Microsoft Office Excel 2 25.01.2012 17:53
Разработать алгоритм и сложить программу вычесленния функции steep_zero Помощь студентам 1 23.03.2011 18:14
Разработать блок-схему и программу на языке Си функции операции со строками МариМар Помощь студентам 0 01.01.2011 11:31
. Разработать программу, реализующую функции составителя кроссворда seven_mora Фриланс 2 01.06.2010 21:08