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

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

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

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

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

Ответ
 
Опции темы Поиск в этой теме
Старый 15.09.2017, 19:59   #1
Drsmog
Новичок
Джуниор
 
Регистрация: 02.04.2009
Сообщений: 2
По умолчанию График функции на интервале

Привет всем!

Сам код, вопрос ниже.

Код:
Const

x1 = 0;  //Начало оси Ox
x2 = 2*Pi;   //Конец оси Ox         //F(x) на интервале [0,2*Pi]

z1 = Pi;  //Начало оси Ox
z2 = 1.5*Pi;   //Конец оси Ox        // 1, Если F(x)<0 на интервале [Pi,1.5*Pi]

m = 40;    //Масштаб графика
var
x0,y0:integer;  //Центры осей Ox и Oy
x,y,z,w,f:real;       //Координаты, по которым отрисовывается график

begin

  with Image1 do  //Чтобы 100 раз не писать Image1. перед нужной процедурой/функцией
   begin
     x0 := Width div 2; //x0 = центр Image1 по оси Ox
     y0 := Height div 2; //y0 = центр Image1 по оси Oy

     with Canvas do //Чтобы 100 раз не писать ...
      begin
        Pen.Color := ClBlack; //Цвет пера = черный
        Pen.Width := 1;       //Ширина пера = 1
        MoveTo(0,y0);         //Положение курсора = (0,y0)
        LineTo(width,y0);     //Линия от (0,y0) до (width,y0) - линия оси Ox
        MoveTo(x0,0);         //Положение курсора = (x0,0)
        LineTo(x0,Height);    //Линия от (x0,0) до (x0,height) - линия оси Oy
        Pen.Color := ClRed;   //Цвет пера = красный
        Pen.Width := 2;       //Ширина пера = 2

        x:=x1;                //Начальное положеине курсора по оси Ox
        y:=(2*sin(x))+(0.5*cos(x));           //Начальное положение курсора по оси Oy  //2sin(x)+0,5cos(x)
        MoveTo(x0+Trunc(x*m),y0-Trunc(y*m)); //Переносим курсор на заданные

          while x<x2 do                        // координаты относительно центра
          begin                               // осей координат и масштаба
             x:=x+(Pi/18);   //Шаг Точность отрисовки графика
             y:= (2*sin(x))+(0.5*cos(x));    //Сам график            //2sin(x)+0,5cos(x)
            //if y<0 then y:=1;

            LineTo(x0+Trunc(x*m),y0-Trunc(y*m)); //ОТРИСОВКА ГРАФИКА

            memo1.text:=memo1.text+FloatToStr(Roundto(x,-3))+' | '+floattostr(Roundto(y,-3))+chr(13)+chr(10);
          end;


         // Pen.Color := ClGreen;   //Цвет пера = зеленый
          z:=z1;                //Начальное положеине курсора по оси Ox
          w:=(2*sin(z))+(0.5*cos(z));           //Начальное положение курсора по оси Oy  //2sin(x)+0,5cos(x)
          if w<0 then w:=1;                     // 1, Если F(x)<0 на интервале [Pi,2*Pi]
          MoveTo(x0+Trunc(z*m),y0-Trunc(w*m));

          while z<z2 do                        // координаты относительно центра
          begin

           z:=z+(Pi/18);   //Шаг Точность отрисовки графика
           w:= (2*sin(z))+(0.5*cos(z));    //Сам график

           if w<0 then w:=1;               // 1, Если F(x)<0 на интервале [Pi,2*Pi]

           LineTo(x0+Trunc(z*m),y0-Trunc(w*m)); //ОТРИСОВКА ГРАФИКА

           memo2.text:=memo2.text+FloatToStr(Roundto(z,-3))+' | '+floattostr(Roundto(w,-3))+chr(13)+chr(10);
          end;


      end;

   end;


end;

Вопрос: как их объединить ?

В итоге получаем
http://www.programmersforum.ru/attac...1&d=1505494097
Изображения
Тип файла: png 1.png (16.6 Кб, 124 просмотров)
Drsmog вне форума Ответить с цитированием
Ответ


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



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Построить график функции y=x^2. График строится из отрезков и алгоритма Брезенхема Robert_ Помощь студентам 0 20.02.2017 22:37
Напечатать таблицу значений функции на отрезке [a, b] с шагом h. Найти корень функции на этом интервале. GalaiAnton Общие вопросы Delphi 5 20.03.2015 21:53
[Lazarus] приложение, отображающее график функции и вычисляющее определенный интеграл на интервале (библиотека Integrals.pas) hj-81 Помощь студентам 1 02.04.2014 19:24
Составить график и протабулировать следущие функции на заданном интервале [a,b], с заданным шагом h Pro_overrseer Помощь студентам 1 05.11.2013 23:27
Построить график функции F(x) на заданном интервале с заданным шагом и вывести значения х и функции F(x) в таблицу в графическом р Proskurina Паскаль, Turbo Pascal, PascalABC.NET 8 12.11.2012 21:57