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

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

Вернуться   Форум программистов > Delphi программирование > Общие вопросы Delphi
Регистрация

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

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

Ответ
 
Опции темы Поиск в этой теме
Старый 30.07.2016, 16:35   #1
Timka4296
 
Регистрация: 30.07.2016
Сообщений: 3
По умолчанию Построение графика функции y=ax^2+bx+c

Доброго времени суток!
не могу построить график функции y=ax^2+bx+c. С помощью компонента Image.
числа "a,b,c:real" вводятся в Edit.

примерно вот так:
Изображения
Тип файла: jpg P_20160730_101726.jpg (44.7 Кб, 169 просмотров)
Timka4296 вне форума Ответить с цитированием
Старый 30.07.2016, 16:39   #2
Andrey[андрей]
Новичок
Джуниор
 
Регистрация: 06.07.2016
Сообщений: 2
По умолчанию

Циклом от минимального значения X до максимального считайте Y по формуле, и ставьте точки. Что конкретно не получается? Считать, или рисовать?
Andrey[андрей] вне форума Ответить с цитированием
Старый 30.07.2016, 18:54   #3
Timka4296
 
Регистрация: 30.07.2016
Сообщений: 3
По умолчанию

рисовать не умею, вообще, не понимаю что к чему
Timka4296 вне форума Ответить с цитированием
Старый 30.07.2016, 19:44   #4
Andrey[андрей]
Новичок
Джуниор
 
Регистрация: 06.07.2016
Сообщений: 2
По умолчанию

Я к сожалению не умею объяснять лучше, чем написано в учебниках, поэтому просто оставлю ссылку. Почитайте.
http://www.delphi-manual.ru/drawing.php
Andrey[андрей] вне форума Ответить с цитированием
Старый 30.07.2016, 20:52   #5
type_Oleg
Старожил
 
Аватар для type_Oleg
 
Регистрация: 02.03.2008
Сообщений: 2,538
По умолчанию

Сначала, чтоб красивше было, опишите функцию:
Код:
function fu01(x,a,b,c:Real):Real;
begin
 Result:=a*x*x+b*x+c;
end;
Потом надо вычислять масштаб в зависимости от значений x,y . Он у вас может быть разным по x и y ?
И учтите , что в Canvas координаты - целые числа.
type_Oleg вне форума Ответить с цитированием
Старый 30.07.2016, 20:56   #6
Serge_Bliznykov
Старожил
 
Регистрация: 09.01.2008
Сообщений: 26,238
По умолчанию

Timka4296, посмотрите примеры тут:

http://www.programmersforum.ru/showthread.php?t=146776

http://www.programmersforum.ru/showthread.php?t=295276
Serge_Bliznykov вне форума Ответить с цитированием
Старый 31.07.2016, 05:26   #7
newerow1989
Я самый любопытный
Участник клуба
 
Аватар для newerow1989
 
Регистрация: 24.07.2012
Сообщений: 1,949
По умолчанию

Код:
procedure TForm1.Button1Click(Sender: TObject);
const dxy=25;//масштаб
var a,b,c,x,y:real;
    i,x0,y0:integer;

   function f(x:real):real;
   begin
      f:=a*x*x+b*x+c;
   end;

begin
   With Image1.Canvas do
   begin
      {стираем старый рисунок}
      Pen.Color:=clWhite;
      Brush.Color:=clWhite;
      Rectangle(0,0,Image1.Width,Image1.Height);
      {определяем центр}
      x0:=Image1.Width div 2;
      y0:=Image1.Height div 2;
      {рисуем оси}
      Pen.Color:=clBlack;
      MoveTo(0,y0);
      LineTo(Image1.Width,y0);
      MoveTo(x0,0);
      LineTo(x0,Image1.Height);
      {наносим шкалу}
      For i:=-x0 div dxy to x0 div dxy do
      begin
         TextOut(x0+i*dxy+1,y0+1,IntToStr(i));
         MoveTo(x0+i*dxy,y0-5);
         LineTo(x0+i*dxy,y0+5);
      end;
      For i:=-y0 div dxy to y0 div dxy do
      begin
         TextOut(x0+1,y0-i*dxy+1,IntToStr(i));
         MoveTo(x0-5,y0-i*dxy);
         LineTo(x0+5,y0-i*dxy);
      end;
      {строим график}
      a:=StrToFloat(Edit1.Text);
      b:=StrToFloat(Edit2.Text);
      c:=StrToFloat(Edit3.Text);
      Pen.Color:=clRed;
      x:=-x0/dxy;
      y:=f(x);
      MoveTo(0,y0-Round(y*dxy));
      For i:=1 to Image1.Width do
      begin
         x:=(i-x0)/dxy;
         y:=f(x);
         LineTo(i,y0-Round(y*dxy));
      end;
   end;
end;
Изображения
Тип файла: png Безымянный.png (32.9 Кб, 153 просмотров)
С запрограммированным приветом, Неверов Евгений!
Сайт: http://newerow1989.ru
[Паскаль] [Delphi]
newerow1989 вне форума Ответить с цитированием
Старый 31.07.2016, 05:41   #8
Timka4296
 
Регистрация: 30.07.2016
Сообщений: 3
По умолчанию

огромное спасибо!
Timka4296 вне форума Ответить с цитированием
Старый 31.07.2016, 05:45   #9
newerow1989
Я самый любопытный
Участник клуба
 
Аватар для newerow1989
 
Регистрация: 24.07.2012
Сообщений: 1,949
По умолчанию

С запрограммированным приветом, Неверов Евгений!
Сайт: http://newerow1989.ru
[Паскаль] [Delphi]
newerow1989 вне форума Ответить с цитированием
Ответ


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

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

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


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
C++.Построение графика функции. l_one_ly Помощь студентам 3 25.04.2014 10:30
Построение графика функции, мигание(затухание) шарика в минимумах функции kas1m_rus Паскаль, Turbo Pascal, PascalABC.NET 0 27.05.2012 20:28
построение графика функции Никита. Visual C++ 0 24.05.2012 21:46
Построение графика функции f(x) ZVEREX Помощь студентам 0 26.05.2010 13:12
Построение графика функции. TP sysfa1l Помощь студентам 8 15.11.2009 13:01