Форум программистов, компьютерный форум, киберфорум
Pascal ABC
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.88/88: Рейтинг темы: голосов - 88, средняя оценка - 4.88
0 / 0 / 0
Регистрация: 03.11.2014
Сообщений: 16

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

05.11.2014, 22:55. Показов 17535. Ответов 18
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Помоги пожалуйста при помощи модуля Graph нарисовать графики функций:
1)y=ln(x);
2)y=x-5.
Не могу правильно подобрать putpixel
0
Programming
Эксперт
39485 / 9562 / 3019
Регистрация: 12.04.2006
Сообщений: 41,671
Блог
05.11.2014, 22:55
Ответы с готовыми решениями:

Нарисовать графики функций
не могу составить графики в Паскале, прошу вашей помощи, ребята!!! Буду вам очень благодарна!!!! заранее спасибо.

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

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

18
Почетный модератор
 Аватар для Puporev
64314 / 47610 / 32743
Регистрация: 18.05.2008
Сообщений: 115,168
06.11.2014, 07:11
Цитата Сообщение от Kon Посмотреть сообщение
при помощи модуля Graph
А точно нужно в Паскаль АВС? Просто в нем модуль называется GraphABC
0
0 / 0 / 0
Регистрация: 03.11.2014
Сообщений: 16
06.11.2014, 18:44  [ТС]
Да, просто не очень в ABC разбираюсь, обычно в другом писал программы
0
Почетный модератор
 Аватар для Puporev
64314 / 47610 / 32743
Регистрация: 18.05.2008
Сообщений: 115,168
06.11.2014, 19:16
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
52
53
uses graphABC;
function F1(x:real):real;
begin
F1:=ln(x);
end;
function F2(x:real):real;
begin
F2:=x-5;
end;
var x,mx,my:real;
    a,b,x0,y0,i:integer;
    s:string;
begin
setwindowsize(500,500);
a:=0;//интервал по Х
b:=10;
x0:=50;//начало координат
y0:=windowheight div 2;
mx:=(windowwidth-x0-30)/b;//масштаб по Х
my:=2*(y0-30)/b;//по Y
line(0,y0,windowwidth,y0);//оси
line(x0,0,x0,windowheight);
for i:=1 to b do//создаем оси координат
 begin
  line(x0+round(i*mx),y0-3,x0+round(i*mx),y0+3); //засечки на оси Х
  line(x0-3,y0+round(i*my),x0+3,y0+round(i*my)); //засечки на оси Y
  line(x0-3,y0-round(i*my),x0+3,y0-round(i*my));
  //подпись оси Х
  textout(x0+round(i*mx),y0+10,inttostr(i));
   //подпись оси Y
  textout(x0-25,y0-round(i*my),inttostr(i));
  textout(x0-20,y0+round(i*my),inttostr(-i));
 end;
//центр
textout(x0+5,y0+10,'0');
//подписи концов осей
textout(windowwidth-10,y0-15,'X');
textout(x0+5,10, 'Y');
//графики
x:=a;
while x<=b do
 begin
  if x>0 then  setpixel(x0+round(x*mx),y0-round(F1(x)*my),clBlue);
  setpixel(x0+round(x*mx),y0-round(F2(x)*my),clRed);
  x:=x+0.001;
 end;
//название
setfontsize(12);
setfontcolor(clBlue);
textout(x0+50,10,'y=ln(x)');
setfontcolor(clRed);
textout(x0+50,30,'y=x-5');
end.
1
0 / 0 / 0
Регистрация: 03.11.2014
Сообщений: 16
06.11.2014, 20:15  [ТС]
Спасибо большое все работает как надо!
0
0 / 0 / 0
Регистрация: 03.11.2014
Сообщений: 16
09.11.2014, 01:44  [ТС]
Помогите пожалуйста как этот код "исправить" для обычного freepascal?
Пробовал сам, но он мне выдает ошибку Error: lllegal expression
0
Почетный модератор
 Аватар для Puporev
64314 / 47610 / 32743
Регистрация: 18.05.2008
Сообщений: 115,168
09.11.2014, 07:24
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
52
53
54
uses graph;
function F1(x:real):real;
begin
F1:=ln(x);
end;
function F2(x:real):real;
begin
F2:=x-5;
end;
var x,mx,my:real;
    a,b,x0,y0,i:integer;
    s:string;
begin
initgraph(x0,y0,'');
a:=0;//интервал по Х
b:=10;
x0:=50;//начало координат
y0:=getmaxY div 2;
mx:=(getmaxX-x0-30)/b;//масштаб по Х
my:=2*(y0-30)/b;//по Y
line(0,y0,getmaxX,y0);//оси
line(x0,0,x0,getmaxY);
for i:=1 to b do//создаем оси координат
 begin
  line(x0+round(i*mx),y0-3,x0+round(i*mx),y0+3); //засечки на оси Х
  line(x0-3,y0+round(i*my),x0+3,y0+round(i*my)); //засечки на оси Y
  line(x0-3,y0-round(i*my),x0+3,y0-round(i*my));
  //подпись оси Х
  str(i,s);
  outtextXY(x0+round(i*mx),y0+10,s);
   //подпись оси Y
  outtextXY(x0-25,y0-round(i*my),s);
  outtextXY(x0-20,y0+round(i*my),'-'+s);
 end;
//центр
outtextXY(x0+5,y0+10,'0');
//подписи концов осей
outtextXY(getmaxY-10,y0-15,'X');
outtextXY(x0+5,10, 'Y');
//графики
x:=a;
while x<=b do
 begin
  if x>0 then  putpixel(x0+round(x*mx),y0-round(F1(x)*my),9);
  putpixel(x0+round(x*mx),y0-round(F2(x)*my),12);
  x:=x+0.001;
 end;
//название
setcolor(9);
outtextXY(x0+50,10,'y=ln(x)');
setcolor(12);
outtextXY(x0+50,30,'y=x-5');
readln
end.
0
0 / 0 / 0
Регистрация: 03.11.2014
Сообщений: 16
09.11.2014, 11:51  [ТС]
Я набрал все как у вас, но он мне выдает ошибку
0
Почетный модератор
 Аватар для Puporev
64314 / 47610 / 32743
Регистрация: 18.05.2008
Сообщений: 115,168
09.11.2014, 12:02
Цитата Сообщение от Kon Посмотреть сообщение
Я набрал все как у вас,
А не нужно набирать, нужно копировать код.

Добавлено через 27 секунд
Вот выложите код, который Вы набрали.

Добавлено через 1 минуту
Или может у Вас какой-то Паскаль подосланный и требует написать типа так.
Pascal
1
2
Programm aaaa;
uses Graph;
0
0 / 0 / 0
Регистрация: 03.11.2014
Сообщений: 16
09.11.2014, 12:07  [ТС]
А как правильно скопировать, чтоб он в окно паскаля вставил?У меня он не поддерживает обычное сочетание клавиш




0
Почетный модератор
 Аватар для Puporev
64314 / 47610 / 32743
Регистрация: 18.05.2008
Сообщений: 115,168
09.11.2014, 12:09
Цитата Сообщение от Kon Посмотреть сообщение
А как правильно скопировать, чтоб он в окно паскаля вставил?
Да никак. Копировать нужно в Блокнот и сохранять файл с расширением .pas
0
0 / 0 / 0
Регистрация: 03.11.2014
Сообщений: 16
09.11.2014, 12:10  [ТС]
Может и подосланный, я попробовал, но все равно:
0
Почетный модератор
 Аватар для Puporev
64314 / 47610 / 32743
Регистрация: 18.05.2008
Сообщений: 115,168
09.11.2014, 12:10
А чтобы выложить код сюда нужно открыть ивой файл .pas в текстовом редакторе, скопировать код и вставить в тему.
0
0 / 0 / 0
Регистрация: 03.11.2014
Сообщений: 16
09.11.2014, 12:17  [ТС]
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
uses graph;
function f1(x:real):real;
begin
f1:=ln(x);
end;
function f2(x:real):real;
begin
f2:=x-5;
end;
var x,mx,my:real; a,b,x0,y0,i:integer; s:string;
begin
initgraph(x0,y0,' ');
a:=0;
b:=10;
x0:=50;
y0:=getmaxy div 2;
mx:=(getmaxx-x0-30)/b;
my:=2*(y0-30)/b;
line(0,y0,getmaxx,y0);
line(x0,0,x0,getmaxy);
for i:=1 to b do
begin
line(x0+round(i*mx),y0-3,x0+round(i*mx),y0+3);
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));
str(i,s);
outtextxy(x0+round(i*mx),y0+10,s);
outtextxy(x0-25,y0-round(i*my),s);
outtextxy(x0-20,y0+round(i*my),'-'+s);
end;
outtextxy(x0+5,y0+10,'0');
outtextxy(getmaxy-10,y0-15,'X');
outtextxy(x0+5,10,'Y');
x:=a;
while x<=b do
begin
if x>0 then putpixel(x0+round(x*mx),y0-round(f1(x)*my),9);
putpixel(x0+round(x*mx),y0-round(f2(x)*my),12);
x:=x+0.001;
end;
setcolor(9);
outtextxy(x0+50,10,'y=Ln(x)');
setcolor(12);
outtextxy(x0+50,30,'y=x-5');
readln;
end.
0
Почетный модератор
 Аватар для Puporev
64314 / 47610 / 32743
Регистрация: 18.05.2008
Сообщений: 115,168
09.11.2014, 12:18
Попробуй мое запустить
Вложения
Тип файла: rar График.rar (36.1 Кб, 29 просмотров)
0
0 / 0 / 0
Регистрация: 03.11.2014
Сообщений: 16
09.11.2014, 12:20  [ТС]
Запустился без проблем) Спасибо, вы меня очень выручаете!
0
Почетный модератор
 Аватар для Puporev
64314 / 47610 / 32743
Регистрация: 18.05.2008
Сообщений: 115,168
09.11.2014, 12:20
Код кстати, выложенный тобой, правильный.
0
0 / 0 / 0
Регистрация: 03.11.2014
Сообщений: 16
09.11.2014, 12:25  [ТС]
А из-за чего он не давал ему запуститься тогда?Интересно...
0
Почетный модератор
 Аватар для Puporev
64314 / 47610 / 32743
Регистрация: 18.05.2008
Сообщений: 115,168
09.11.2014, 12:26
Может Free Pascal глючит, часто попадаются очень косячные версии..
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
inter-admin
Эксперт
29715 / 6470 / 2152
Регистрация: 06.03.2009
Сообщений: 28,500
Блог
09.11.2014, 12:26
Помогаю со студенческими работами здесь

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

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

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

Графики функций в Паскале
Доброе время суток, уважаемые программисты Помогите, пожалуйста, сделать программу: 1) построить координатные оси и сделать их...

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


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

Или воспользуйтесь поиском по форуму:
19
Ответ Создать тему
Новые блоги и статьи
YAFU@home — распределённые вычисления для математики. На CPU
Programma_Boinc 20.01.2026
YAFU@home — распределённые вычисления для математики. На CPU YAFU@home — это BOINC-проект, который занимается факторизацией больших чисел и исследованием aliquot-последовательностей. Звучит. . .
http://iceja.net/ математические сервисы
iceja 20.01.2026
Обновила свой сайт http:/ / iceja. net/ , приделала Fast Fourier Transform экстраполяцию сигналов. Однако предсказывает далеко не каждый сигнал (см ограничения http:/ / iceja. net/ fourier/ docs ). Также. . .
http://iceja.net/ сервер решения полиномов
iceja 18.01.2026
Выкатила http:/ / iceja. net/ сервер решения полиномов (находит действительные корни полиномов методом Штурма). На сайте документация по API, но скажу прямо VPS слабенький и 200 000 полиномов. . .
Расчёт переходных процессов в цепи постоянного тока
igorrr37 16.01.2026
/ * Дана цепь постоянного тока с R, L, C, k(ключ), U, E, J. Программа составляет систему уравнений по 1 и 2 законам Кирхгофа, решает её и находит: токи, напряжения и их 1 и 2 производные при t = 0;. . .
Восстановить юзерскрипты Greasemonkey из бэкапа браузера
damix 15.01.2026
Если восстановить из бэкапа профиль Firefox после переустановки винды, то список юзерскриптов в Greasemonkey будет пустым. Но восстановить их можно так. Для этого понадобится консольная утилита. . .
Сукцессия микоризы: основная теория в виде двух уравнений.
anaschu 11.01.2026
https:/ / rutube. ru/ video/ 7a537f578d808e67a3c6fd818a44a5c4/
WordPad для Windows 11
Jel 10.01.2026
WordPad для Windows 11 — это приложение, которое восстанавливает классический текстовый редактор WordPad в операционной системе Windows 11. После того как Microsoft исключила WordPad из. . .
Classic Notepad for Windows 11
Jel 10.01.2026
Old Classic Notepad for Windows 11 Приложение для Windows 11, позволяющее пользователям вернуть классическую версию текстового редактора «Блокнот» из Windows 10. Программа предоставляет более. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru