Форум программистов, компьютерный форум, киберфорум
Pascal ABC
Войти
Регистрация
Восстановить пароль
Карта форума Темы раздела Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.81/21: Рейтинг темы: голосов - 21, средняя оценка - 4.81
0 / 0 / 0
Регистрация: 23.03.2011
Сообщений: 8
1

Построить графики функций

23.03.2011, 16:12. Показов 4358. Ответов 15
Метки нет (Все метки)

Author24 — интернет-сервис помощи студентам
Прошу,срочно помогите на паскале абс
y=|x|
y=x^2+2x+1
y=sinx * cosx
y=0,5sinx*8cosx
y=x^3+1
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
23.03.2011, 16:12
Ответы с готовыми решениями:

Построить графики функций
на одной координатной сетке построить графики функций: f1(x)= корень из (х*х + 2) ,...

Построить графики функций
y=x^3+2x^2+x.Помогите пожалуйста.

Построить графики функций
Необходимо построить графики функций.В паскале ABC. Помогите пожалуйста! Y=2*(1/X-1/X2) y=cos(x) ...

Построить графики функций
Построить графики функций:

15
Почетный модератор
64300 / 47595 / 32743
Регистрация: 18.05.2008
Сообщений: 115,181
23.03.2011, 16:32 2
Это все на одной оси, в одной программе?
0
0 / 0 / 0
Регистрация: 23.03.2011
Сообщений: 8
23.03.2011, 16:38  [ТС] 3
Ну каждый график это отдельная программа. Заранее огромное спасибо.
0
Почетный модератор
64300 / 47595 / 32743
Регистрация: 18.05.2008
Сообщений: 115,181
23.03.2011, 17:09 4
1.
Pascal
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
uses graphABC;
const
x1=-10;
x2=10;
var
x,dx,y1,y2,y:real;
mx,my,x0,y0,px,py1,py2,i,c:integer;
s:string;
begin
X0:=windowwidth div 2;{начало координат}
Y0:=windowheight-50;
mx:=round((windowwidth-50)/(x2-x1));
my:=round((windowheight-70)/x2);
line(25,y0,windowwidth-25,y0); {ось Х}
line(x0,y0,x0,10); {ось У}
for i:=1 to x2 do
   begin
    line(x0-3,y0-i*my,x0+3,y0-i*my);     {засечки на оси У}
    line(x0+i*mx,y0-3,x0+i*mx,y0+3); {засечки на оси Х}
    line(x0-i*mx,y0-3,x0-i*mx,y0+3);
    {подпись оси У}
    str(i,s);
    textout(x0+5,y0-i*my,s);{соответственно засечкам}
    {подпись оси Х}
    textout(x0+i*mx,y0+10,s);
    textout(x0-i*mx,y0+10,'-'+s);
   end;
{подписи концов осей}
textout(windowwidth-25,y0-15,'X');
textout(x0+10,5, 'Y');
textout(x0,y0+10, '0');
dx:=0.001;
x:=x1;
while x<=x2 do
   begin
     px:=x0+round(x*mx); {изменение по оси Х}
     y1:=abs(x); {график}
     py1:=y0-round(y1*my);
     Putpixel (px,py1,4);
     x:=x+dx; {наращиваем х}
   end;
readln;
end.
1
0 / 0 / 0
Регистрация: 23.03.2011
Сообщений: 8
23.03.2011, 17:14  [ТС] 5
Спасибо!!!!Жду остальных!
0
Почетный модератор
64300 / 47595 / 32743
Регистрация: 18.05.2008
Сообщений: 115,181
23.03.2011, 17:16 6
2.
Pascal
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
uses graphABC;
const
x1=-5;
x2=5;
var
x,dx,y1,y2,y:real;
mx,my,x0,y0,px,py1,py2,i,c:integer;
s:string;
begin
X0:=windowwidth div 2;{начало координат}
Y0:=windowheight-50;
mx:=round((windowwidth-50)/(x2-x1));
my:=round((windowheight-70)/(x2*x2+2*x2+1));
line(25,y0,windowwidth-25,y0); {ось Х}
line(x0,y0,x0,10); {ось У}
for i:=1 to x2*x2+2*x2+1 do
   begin
    line(x0-3,y0-i*my,x0+3,y0-i*my);     {засечки на оси У}
    line(x0+i*mx,y0-3,x0+i*mx,y0+3); {засечки на оси Х}
    line(x0-i*mx,y0-3,x0-i*mx,y0+3);
    {подпись оси У}
    str(i,s);
    if i mod 2=0 then textout(x0+5,y0-i*my,s);{соответственно засечкам}
    {подпись оси Х}
    textout(x0+i*mx,y0+10,s);
    textout(x0-i*mx,y0+10,'-'+s);
   end;
{подписи концов осей}
textout(windowwidth-25,y0-15,'X');
textout(x0+10,10, 'Y');
textout(x0,y0+10, '0');
dx:=0.001;
x:=x1;
while x<=x2 do
   begin
     px:=x0+round(x*mx); {изменение по оси Х}
     y1:=x*x+2*x+1; {график}
     py1:=y0-round(y1*my);
     Putpixel (px,py1,4);
     x:=x+dx; {наращиваем х}
   end;
readln;
end.
Добавлено через 46 секунд
Цитата Сообщение от Shadow10 Посмотреть сообщение
Жду остальных!
Остальные сам, надо же учиться, а то еще торговать ими пойдешь...
1
0 / 0 / 0
Регистрация: 23.03.2011
Сообщений: 8
23.03.2011, 17:23  [ТС] 7
Я бы с радостью попытался, но я не дома, а дома буду поздно вечером. Мне просто информатик задал, а я незнаю как успеть.
Ничем торговать я не собираюсь,просто нету времени разобраться.Вы меня очень выручите если сделаете это.
0
Почетный модератор
64300 / 47595 / 32743
Регистрация: 18.05.2008
Сообщений: 115,181
23.03.2011, 17:34 8
3.

Pascal
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
uses graphABC;
function F(x:real):real;
begin
F:=sin(x)*cos(x);
end;
var xn,xk,x,y,mx,my,dx:real;
    x0,y0,i,px,py:integer;
    s:string;
begin
x0:=windowwidth div 2;{центр экрана}
y0:=windowheight div 2;
xn:=-2*pi;xk:=2*pi;{интервал по Х}
mx:=(windowwidth-60)/(xk-xn);{масштаб по Х}
my:=(y0-40)/(F(pi/4));{по У-делим на макс. функции}
setpencolor(clBlack);{цвет линий}
line(0,y0,windowwidth,y0);{оси}
line(x0,0,X0,windowheight );
for i:=1 to round(xk) do{максимальное количество засечек в одну сторону}
  begin
    line(x0+round(i*mx),y0-3,x0+round(i*mx),Y0+3); {засечки на оси Х}
    line(x0-round(i*mx),y0-3,x0-round(i*mx),Y0+3);
    {подпись оси Х}
    str(i,s);
    textout(x0+round(i*mx)-15,y0+10,s);
    textout(x0-round(i*mx),y0+10,'-'+s);
    line(x0-3,y0-round(i*my),x0+3,y0-round(i*my));
    line(x0-3,y0+round(i*my),x0+3,y0+round(i*my));
    textout(x0-15,y0-round(i*my),s);
    textout(x0-15,y0+round(i*my),'-'+s);
  end;
{центр}
textout(x0+5,y0+10,'0');
{подписи концов осей}
textout(windowwidth-10,y0-10,'X');
textout(x0-10,10, 'Y');
//setpencolor(8);
{график}
x:=xn;
dx:=0.001;
while x<=xk do
   begin
     x:=x+dx; {наращиваем х}
     px:=x0+round(x*mx); {изменение по оси Х}
     y:=F(x); {график в реальных координатах}
     py:=y0-round(y*my);{в экранных}
     putpixel(px,py,8);
   end;
textout(60,20,'График функции y=sinx*cosx');
end.
Ты хоть приведи их к одному виду, а то я с разных программ дергаю.
1
0 / 0 / 0
Регистрация: 23.03.2011
Сообщений: 8
23.03.2011, 17:38  [ТС] 9
ок
постараюсь
вы просто очень меня выручили!
0
Почетный модератор
64300 / 47595 / 32743
Регистрация: 18.05.2008
Сообщений: 115,181
23.03.2011, 17:53 10
Третью чуть переделал, там по оси У непорядок.

Pascal
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
uses graphABC;
function F(x:real):real;
begin
F:=sin(x)*cos(x);
end;
var xn,xk,x,y,mx,my,dx:real;
    x0,y0,i,px,py:integer;
    s:string;
begin
x0:=windowwidth div 2;{центр экрана}
y0:=windowheight div 2;
xn:=-2*pi;xk:=2*pi;{интервал по Х}
mx:=(windowwidth-60)/(xk-xn);{масштаб по Х}
my:=(y0-40)/(F(pi/4));{по У-делим на макс. функции}
setpencolor(clBlack);{цвет линий}
line(0,y0,windowwidth,y0);{оси}
line(x0,0,X0,windowheight );
for i:=1 to round(xk) do{максимальное количество засечек в одну сторону}
  begin
    line(x0+round(i*mx),y0-3,x0+round(i*mx),Y0+3); {засечки на оси Х}
    line(x0-round(i*mx),y0-3,x0-round(i*mx),Y0+3);
    {подпись оси Х}
    str(i,s);
    textout(x0+round(i*mx)-15,y0+10,s);
    textout(x0-round(i*mx),y0+10,'-'+s);
   end;
//засечки по оси Y
line(x0-3,y0-round(F(pi/4)*my),x0+3,y0-round(F(pi/4)*my));
line(x0-3,y0+round(F(pi/4)*my),x0+3,y0+round(F(pi/4)*my));
str(F(pi/4):0:2,s);
textout(x0-25,y0-round(F(pi/4)*my),s);
textout(x0-25,y0+round(F(pi/4)*my),'-'+s);
{центр}
textout(x0+5,y0+10,'0');
{подписи концов осей}
textout(windowwidth-10,y0-10,'X');
textout(x0-10,10, 'Y');
//setpencolor(8);
{график}
x:=xn;
dx:=0.001;
while x<=xk do
   begin
     x:=x+dx; {наращиваем х}
     px:=x0+round(x*mx); {изменение по оси Х}
     y:=F(x); {график в реальных координатах}
     py:=y0-round(y*my);{в экранных}
     putpixel(px,py,8);
   end;
textout(60,20,'График функции y=sinx*cosx');
end.
Добавлено через 19 секунд
4.

Pascal
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
uses graphABC;
function F(x:real):real;
begin
F:=0.5*sin(x)*8*cos(x);
end;
var xn,xk,x,y,mx,my,dx:real;
    x0,y0,i,px,py:integer;
    s:string;
begin
x0:=windowwidth div 2;{центр экрана}
y0:=windowheight div 2;
xn:=-2*pi;xk:=2*pi;{интервал по Х}
mx:=(windowwidth-60)/(xk-xn);{масштаб по Х}
my:=(y0-40)/(F(pi/4));{по У-делим на макс. функции}
setpencolor(clBlack);{цвет линий}
line(0,y0,windowwidth,y0);{оси}
line(x0,0,X0,windowheight );
for i:=1 to round(xk) do{максимальное количество засечек в одну сторону}
  begin
    line(x0+round(i*mx),y0-3,x0+round(i*mx),Y0+3); {засечки на оси Х}
    line(x0-round(i*mx),y0-3,x0-round(i*mx),Y0+3);
    {подпись оси Х}
    str(i,s);
    textout(x0+round(i*mx)+5,y0+10,s);
    textout(x0-round(i*mx),y0+10,'-'+s);
    line(x0-3,y0-round(i*my),x0+3,y0-round(i*my));
    line(x0-3,y0+round(i*my),x0+3,y0+round(i*my));
    textout(x0-15,y0-round(i*my),s);
    textout(x0-15,y0+round(i*my),'-'+s);
  end;
{центр}
textout(x0+5,y0+10,'0');
{подписи концов осей}
textout(windowwidth-10,y0-10,'X');
textout(x0-10,10, 'Y');
//setpencolor(8);
{график}
x:=xn;
dx:=0.001;
while x<=xk do
   begin
     x:=x+dx; {наращиваем х}
     px:=x0+round(x*mx); {изменение по оси Х}
     y:=F(x); {график в реальных координатах}
     py:=y0-round(y*my);{в экранных}
     putpixel(px,py,8);
   end;
textout(60,20,'График функции y=sinx*cosx');
end.
Добавлено через 4 минуты
5.

Pascal
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
uses graphABC;
function F(x:real):real;
begin
F:=x*x*x+1;
end;
var xn,xk,x,y,mx,my,dx:real;
    x0,y0,i,px,py:integer;
    s:string;
begin
x0:=windowwidth div 2;{центр экрана}
y0:=windowheight div 2;
xn:=-3;xk:=3;{интервал по Х}
mx:=(windowwidth-60)/(xk-xn);{масштаб по Х}
my:=(y0-40)/(F(xk));{по У-делим на макс. функции}
setpencolor(clBlack);{цвет линий}
line(0,y0,windowwidth,y0);{оси}
line(x0,0,X0,windowheight );
for i:=1 to round(xk) do{максимальное количество засечек в одну сторону}
  begin
    line(x0+round(i*mx),y0-3,x0+round(i*mx),Y0+3); {засечки на оси Х}
    line(x0-round(i*mx),y0-3,x0-round(i*mx),Y0+3);
    {подпись оси Х}
    str(i,s);
    textout(x0+round(i*mx)+5,y0+10,s);
    textout(x0-round(i*mx),y0+10,'-'+s);
    str(i*10,s);
    line(x0-3,y0-round(10*i*my),x0+3,y0-round(10*i*my));
    line(x0-3,y0+round(10*i*my),x0+3,y0+round(10*i*my));
    textout(x0-15,y0-round(10*i*my),s);
    textout(x0-15,y0+round(10*i*my),'-'+s);
  end;
{центр}
textout(x0+5,y0+10,'0');
{подписи концов осей}
textout(windowwidth-10,y0-10,'X');
textout(x0-10,10, 'Y');
//setpencolor(8);
{график}
x:=xn;
dx:=0.001;
while x<=xk do
   begin
     x:=x+dx; {наращиваем х}
     px:=x0+round(x*mx); {изменение по оси Х}
     y:=F(x); {график в реальных координатах}
     py:=y0-round(y*my);{в экранных}
     putpixel(px,py,8);
   end;
textout(60,20,'График функции y=sinx*cosx');
end.
1
0 / 0 / 0
Регистрация: 23.03.2011
Сообщений: 8
23.03.2011, 20:37  [ТС] 11
Спасибо огромное-но что за фигня проблема с putpixel
Program1.pas(46) : Нельзя преобразовать тип integer к System.Drawing.Color
0
Почетный модератор
64300 / 47595 / 32743
Регистрация: 18.05.2008
Сообщений: 115,181
23.03.2011, 20:39 12
Это в какой программе? У меня все программы работают без ошибок.
0
0 / 0 / 0
Регистрация: 23.03.2011
Сообщений: 8
23.03.2011, 20:39  [ТС] 13
Спасибо,но какая-то проблема с putpixel
Program1.pas(46) : Нельзя преобразовать тип integer к System.Drawing.Color
0
Почетный модератор
64300 / 47595 / 32743
Регистрация: 18.05.2008
Сообщений: 115,181
23.03.2011, 20:45 14
Попробуй вместо putpixel SetPixel(); с теми же параметрами, или цвет не цифрой, а названием, например clRed

Добавлено через 1 минуту
Но у меня все работает, какой-то Паскаль у тебя глючавый...
0
0 / 0 / 0
Регистрация: 23.03.2011
Сообщений: 8
23.03.2011, 20:52  [ТС] 15
Поменял и всё заработало,ты меня очень выручил- огромное спасибо!!!!!!!

Добавлено через 3 минуты
какой паскль посоветуете-я скачал абс походу фигня какая то

Добавлено через 3 минуты
Посоветуйте паскаль а то мой паскаль абс фигня какая-то
0
Почетный модератор
64300 / 47595 / 32743
Регистрация: 18.05.2008
Сообщений: 115,181
23.03.2011, 21:06 16
Я вообще в Турбо Паскаль больше пишу, а где АВС скачивал, не помню. Посмотри в теме
Скачать Паскаль
0
23.03.2011, 21:06
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
23.03.2011, 21:06
Помогаю со студенческими работами здесь

Построить графики функций
Построить графики функций, заданных по одному из вариантов в таблице 1: а) Y1( x) и Y2( x) в...

Построить графики указанных функций
Используя графические средства языка Паскаль ABC на одной координатной сетке построить графики...

Построить графики функций в полярных координатах
r= a sin (nf) , 0&lt;=f&lt;=2пи

Построить графики функций в паскале абс
Помогите построить графики функций

Построить графики двух функций Y=x^3*e^(2*x) и y=e^x*sinx
Помогите построить графики двух функций Y=x^3*e^(2*x) и y=e^x*sinx.

Построить графики функций: в параметрической форме
x= a (t-sin t) y= a (1 -cos t) , 0 &lt;=t&lt;=2пи


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
16
Ответ Создать тему
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2024, CyberForum.ru