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

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

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

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

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

Ответ
 
Опции темы Поиск в этой теме
Старый 15.05.2012, 19:01   #1
vad1
 
Регистрация: 09.05.2012
Сообщений: 3
По умолчанию построить график функции у=(3х^2—6)/2х

Здравствуйте. Не могу сделать задание. Необходимо построить график функции у=(3х^2—6)/2х с осями, сеткой координат и обозначением точки разрыва, шаг 0.01. Заранее спасибо. в TurboPascal

Последний раз редактировалось vad1; 15.05.2012 в 20:00. Причина: редактирование информации
vad1 вне форума Ответить с цитированием
Старый 15.05.2012, 19:32   #2
cbuilderx
Пользователь
 
Регистрация: 12.03.2010
Сообщений: 18
По умолчанию

Вам собственно на каком языке нужно?у меня есть на С++: точки разрыва для вашего графика нужно будет посчитать ручками на листочке,подcтавить в мой код вашу функцию...Кинуть на форму Button и Image.
Код:
//---------------------------------------------------------------------------

#include <vcl.h>
#include <math.h>
#pragma hdrstop

#include "Unit1.h"
//---------------------------------------------------------------------------
#pragma package(smart_init)
#pragma resource "*.dfm"
TForm1 *Form1;
//---------------------------------------------------------------------------
__fastcall TForm1::TForm1(TComponent* Owner)
        : TForm(Owner)
{
}
//---------------------------------------------------------------------------
float xmin=-5, xmax=5;                  // Область изменения x
float ymin=-5, ymax=5;                  // Область изменения y
float hx;                               // Шаг
float xdens, ydens;                     // Коэффициенты масштабирования
float c1=-2,c2=2;                       // Точки разрыва
// Вычисление экранной x координаты
int ex(float x,float y)
	{return (int) ((x-xmin)/xdens);}

// Вычисление экранной y координаты
int ey(float x,float y)
	{return (int) ((ymax-y)/ydens);}

// Функция y=x/x^2-4
float f(float x) {return (float)(x/(pow(x,2)-4));}
void line(int x0, int y0,int x1, int y1)
{
        Form1->Image1->Canvas->MoveTo(x0,y0);
        Form1->Image1->Canvas->LineTo(x1,y1);
}
void outtextxy(int x, int y,char *s)
{
Form1->Image1->Canvas->TextOutA(x,y,s);

}
int maxX, maxY;

void __fastcall TForm1::Button1Click(TObject *Sender)
{
int n=100;
float x,y;
        maxX=Form1->Image1->Width;
        maxY=Form1->Image1->Height;
        xmin=-5; xmax=5; ymin=-5; ymax=5;
    xdens=(xmax-xmin)/maxX; //Вычисление коэффициента масштабирования по x
    ydens=(ymax-ymin)/maxY; //Вычисление коэффициента масштабирования по y
        hx=(xmax-xmin)/n;				// Вычисление шага
     line(ex(xmin,0), ey(xmin,0), ex(xmax,0), ey(xmax,0));	// Вывод оси X
     line(ex(0,ymax), ey(0,ymax), ex(0,ymin), ey(0,ymin));	// Вывод оси Y
// Вывод стрелок и букв
        line(ex(0,ymax),ey(0,ymax),ex(0,ymax)-3,ey(0,ymax)+8);
        line(ex(0,ymax),ey(0,ymax),ex(0,ymax)+3,ey(0,ymax)+8);
        line(ex(xmax,0),ey(xmax,0),ex(xmax,0)-8,ey(xmax,0)+3);
        line(ex(xmax,0),ey(xmax,0),ex(xmax,0)-8,ey(xmax,0)-3);
        outtextxy(ex(xmax,0)-10,ey(xmax,0)+5, "X");
        outtextxy(ex(0,ymax)+5,ey(0,ymax), "Y");
// Вывод графика функции x/x*x-4 на отрезке [xmin,-hx]
        for(x=xmin;x<c1-hx;x+=hx)
     line(ex(x,f(x)),ey(x,f(x)), ex(x+hx, f(x+hx)), ey(x+hx, f(x+hx)));
// Вывод графика функции x/x*x-4 на отрезке [c1+hx,c2-hx]	 
        for(x=c1+hx;x<c2-hx;x+=hx)	
     line(ex(x,f(x)),ey(x,f(x)), ex(x+hx, f(x+hx)), ey(x+hx, f(x+hx)));
// Вывод графика функции x/x*x-4 на отрезке [c2+hx,xmax]		    
		for(x=c2+hx;x<xmax;x+=hx)
     line(ex(x,f(x)),ey(x,f(x)), ex(x+hx, f(x+hx)), ey(x+hx, f(x+hx)));

 outtextxy(ex(0,ymax)+5,ey(0,ymax)+20,"График функции y=x/x^2-4");
}
//---------------------------------------------------------------------------
P.S. программный код для Borland C++ 6.0...
Дорога возникает только под шагами идущего...

Последний раз редактировалось cbuilderx; 15.05.2012 в 19:36.
cbuilderx вне форума Ответить с цитированием
Старый 15.05.2012, 20:01   #3
vad1
 
Регистрация: 09.05.2012
Сообщений: 3
По умолчанию

Мне нужно в Паскале. Спасибо большое что откликнулись, но увы.
vad1 вне форума Ответить с цитированием
Ответ


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



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
построить график функции ulechka128 Помощь студентам 0 25.12.2011 13:38
построить график функции Катюшка_92 Microsoft Office Excel 2 19.09.2010 10:17
за $ построить график функции c# NastyaL Фриланс 3 12.08.2010 08:57
Построить график функции Horknee Паскаль, Turbo Pascal, PascalABC.NET 15 23.09.2008 09:50