Другие языки программирования и технологии
Паскаль...графика)
Задание: исследовать область определения и построить график функции y=1/x^2. У меня уже есть программка, но надо как-то красивее сделать сам график (подписать и т.д.) Кто заинтересовался - скину программку! Буду благодарна любой помощи! Вся надежда на Вас!!!
напиши мне)
Фарид Каримов
Отправила на почту!
{ Построение графика функции }
program groffunc;
uses Graph;
var
x1,x2:real; { границы изменения аргумента функции }
y1,y2:real; { границы изменения значения функции }
x:real; { аргумент функции }
y:real; { значение функции в точке x}
dx:real; { приращение аргумента }
l,b:integer; { левый нижний угол области вывода графика }
w,h:integer; { ширина и высота области вывода графика }
mx,my:real; { масштаб по осям X и Y }
x0,y0:integer; { точка - начало координат }
st:string; { изображение числа }
grDriver: Integer;
grMode: Integer;
ErrCode: Integer;
{ Функция, график которой надо построить }
Function f(x:real):real;
begin
f:=2*Sin(x)*exp(x/5);
end;
Function f2(x:real):real;
begin
f2:=Ln(x);
end;
begin
grDriver := VGA;
grMode:=VGAHi;
InitGraph(grDriver, grMode,'d:\tp\bgi');
ErrCode := GraphResult;
if ErrCode <> grOk then Halt(1);
l:=40;
b:=400;
h:=200;
w:=200;
x1:=0;
x2:=25;
dx:=0.01;
{ найдем максимальное и минимальое значения
функции на отрезке [x1,x2] }
y1:=f(x1); { минимум }
y2:=f(x1); { максимум }
x:=x1;
repeat
y:=f(x);
if y<y1>y2 then y2:=y;
x:=x+dx;
until (x>=x2);
my:=h/abs(y2-y1);
mx:=w/abs(x2-x1);
{ оси }
x0:=l;
y0:=b-Abs(Round(y1*my));
Line(l,b,l,b-h);
Line(x0,y0,x0+w,y0);
Str(y2:5:1,st);
OutTextXY(l+5,b-h,st);
Str(y1:5:1,st);
OutTextXY(l+5,b,st);
{ построение графика }
x:=x1;
repeat
y:=f(x);
PutPixel(x0+Round(x*mx),y0-Round(y*my),15);
x:=x+dx;
until (x>=x2);
Readln;
CloseGraph;
end.
program groffunc;
uses Graph;
var
x1,x2:real; { границы изменения аргумента функции }
y1,y2:real; { границы изменения значения функции }
x:real; { аргумент функции }
y:real; { значение функции в точке x}
dx:real; { приращение аргумента }
l,b:integer; { левый нижний угол области вывода графика }
w,h:integer; { ширина и высота области вывода графика }
mx,my:real; { масштаб по осям X и Y }
x0,y0:integer; { точка - начало координат }
st:string; { изображение числа }
grDriver: Integer;
grMode: Integer;
ErrCode: Integer;
{ Функция, график которой надо построить }
Function f(x:real):real;
begin
f:=2*Sin(x)*exp(x/5);
end;
Function f2(x:real):real;
begin
f2:=Ln(x);
end;
begin
grDriver := VGA;
grMode:=VGAHi;
InitGraph(grDriver, grMode,'d:\tp\bgi');
ErrCode := GraphResult;
if ErrCode <> grOk then Halt(1);
l:=40;
b:=400;
h:=200;
w:=200;
x1:=0;
x2:=25;
dx:=0.01;
{ найдем максимальное и минимальое значения
функции на отрезке [x1,x2] }
y1:=f(x1); { минимум }
y2:=f(x1); { максимум }
x:=x1;
repeat
y:=f(x);
if y<y1>y2 then y2:=y;
x:=x+dx;
until (x>=x2);
my:=h/abs(y2-y1);
mx:=w/abs(x2-x1);
{ оси }
x0:=l;
y0:=b-Abs(Round(y1*my));
Line(l,b,l,b-h);
Line(x0,y0,x0+w,y0);
Str(y2:5:1,st);
OutTextXY(l+5,b-h,st);
Str(y1:5:1,st);
OutTextXY(l+5,b,st);
{ построение графика }
x:=x1;
repeat
y:=f(x);
PutPixel(x0+Round(x*mx),y0-Round(y*my),15);
x:=x+dx;
until (x>=x2);
Readln;
CloseGraph;
end.
Фарид Каримов
Спасибо! Но у меня график уже построен, его нужно только как-то улучшить!
Александр Айдаркин
Сама по себе программа универсальна - она сама определяет сетку под любую функцию (главное, чтобы исключений не было).
А что именно Вы хотите улучшить?...
А что именно Вы хотите улучшить?...
Если пишешь на Delphi то использовать желательно компонент TChart. Он как раз предназначен для графиков и диаграмм.. . Сам делал подобную программу год назад))
Фарид Каримов
Нет, тут обычный Turbo Pascal
Похожие вопросы
- ПАСКАЛЬ и ГРАФИКА
- Написать программу в Паскале для построения графика функций. К программе желательно составить алгоритм.
- Как составить в Паскале программу, выводящую на экран график?
- Аналог ассоциативного массива в Паскале.
- Я внутри написал, что я знаю про паскаль не то что решать и все такое а так теоретический в общем, смысл проги, я прав?
- Помогите в паскале нарисовать график y=e( в степени х)
- Товарищи программисты на Delphi и Pascal помогите девушке!!!)) вопрос глупый..насчет паскаля..
- Проблема с оператором random в паскале
- С++, блин, легче Паскаля.
- Нужны программы на языке Паскаль