1. Мегаконкурс в апреле "Приведи друзей на codeby". Дарим деньги, подписку на журнал хакер и выдаем статус "Paid Access". Подробнее ...

    Скрыть объявление

График функции

Тема в разделе "Delphi - Multimedia, Графика, Игры", создана пользователем meskalin1974, 30 апр 2006.

Наш партнер Genesis Hackspace
Статус темы:
Закрыта.
  1. meskalin1974

    meskalin1974 Гость

    Есть следующий код (На Pascal)
    Код (Text):
    {$n+}
    uses graph;

    type
     tcurve = procedure(t: double;
              var x, y: double);

    procedure my_curve(t: double;
             var x, y: double);far;
    const
     b = 3;
    begin
     x := b*cos(t)*cos(t)*cos(t);
     y := b*sin(t)*sin(t)*sin(t);
    end;

    const
     scale = 20;
    procedure set_point(t: double; f: tcurve);
    var
     x, y: double;
    begin
     f(t, x, y);
     SetColor(white);
     Lineto( (getmaxx div 2) + trunc(scale * x),
             (getmaxy div 2) - trunc(scale * y));
    end;

    procedure draw_curve(start, finish, step: double;
             f: tcurve);
    var t: double;
    begin
     setcolor(green);
     line(0, getmaxy div 2, getmaxx, getmaxy div 2);
     line(getmaxx div 2, 0, getmaxx div 2, getmaxy);

     t := start;

     while t <= finish do begin
       set_point(t, f);
       t := t + step;
     end;
    end;

    var grDriver, grMode: integer;
    begin
     initgraph(grDriver, grMode, 'D:\BP\BGI');

     draw_curve(0, 2*pi - pi/120, pi/120, my_curve);

     readln;

     closegraph;
    end.
    Надо сюда дописать функцию, с помощью которой будет строиться график функции y=1/x*x+2*x+1 в духе уже написанного.
    Помогите пожалуйста, заранее благодарен.
     
  2. Razoomnick

    Razoomnick Гость

    ...
    procedure my_curve(t: double;
    var x, y: double);far;
    const
    b = 3;
    begin
    x := t;
    y := 1/(t*t)+2*t+1;
    end;
    ...

    ...
    while t <= finish do begin
    if t<>0 then do begin
    set_point(t, f);
    end;
    t := t + step;
    end;
    ....

    Дальше соображайте, меняйте пределы, шаг, пока не получите то, что нужно. Паскаля просто под руками нету.
     
Загрузка...
Статус темы:
Закрыта.

Поделиться этой страницей