Форум программистов, компьютерный форум, киберфорум
Free Pascal
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.50/4: Рейтинг темы: голосов - 4, средняя оценка - 4.50
0 / 0 / 0
Регистрация: 23.09.2013
Сообщений: 18

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

27.10.2013, 17:37. Показов 793. Ответов 3
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Построить график функции с постепенно закрашивающимися ограниченными областями
Миниатюры
Построить график функции  
0
Programming
Эксперт
39485 / 9562 / 3019
Регистрация: 12.04.2006
Сообщений: 41,671
Блог
27.10.2013, 17:37
Ответы с готовыми решениями:

Построить график функции F(x) на заданном интервале с заданным шагом и вывести значения х и функции F(x) в таблицу в графическом режиме
Построить график функции F(x) на заданном интервале с заданным шагом и вывести значения х и функции F(x) в таблицу в графическом режиме. ...

Построить график функции
Здравствуйте!! вы не могли бы мне помочь?? Изобразить на экране график указанной функции (параметр D принимает следующие...

Построить график функции y=x^2
Построить график функций: y = x2 на отрезке

3
Почетный модератор
 Аватар для Puporev
64315 / 47611 / 32743
Регистрация: 18.05.2008
Сообщений: 115,167
28.10.2013, 16:06
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
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
uses graph,crt;
function F1(x:real):real;
begin
F1:=x*x-4;
end;
function F2(x:real):real;
begin
F2:=sqr(x-3)/2;
end;
function F3(x:real):real;
begin
F3:=-sqrt(9-x*x);
end;
var max,min,mx,my,h:real;
    x,y,x1,y1,x2,y2,x3,y3:real;
    a,b,x0,y0,i,n:integer;
    s:string;
begin
initgraph(x0,y0,'');
a:=1;
b:=3;{Ё*вҐаў*« Ї® •}
min:=F1(a);
max:=min;
x:=a;
while x<=0 do
 begin
  if F1(x)<min then min:=F1(x);
  if F2(x)<min then min:=F2(x);
  if F3(x)<min then min:=F3(x);
  if F1(x)>max then max:=F1(x);
  if F2(x)>max then max:=F2(x);
  if F3(x)>max then max:=F3(x);
  x:=x+0.01
 end;
if abs(min)>max then max:=abs(min);
n:=round(max);
x0:=50;
mx:=(getmaxX-x0-30)/(b-a);{¬*бив*Ў Ї® •}
y0:=getmaxY div 2;
my:=(y0-30)/max;
line(0,y0,getmaxX,y0);{®бЁ}
line(x0,0,X0,getmaxY);
for i:=1 to 2*n do{¬*ЄбЁ¬*«м*®Ґ Є®«ЁзҐбвў® §*бҐзҐЄ ў ®¤*г бв®а®*г}
 begin
  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-30,y0-round(i*my),s);{ᮮ⢥вб⢥**® §*бҐзЄ*¬}
  outtextXY(x0-40,y0+round(i*my),'-'+s);
  line(x0+round((i-2)*mx/2),y0-3,x0+round((i-2)*mx/2),y0+3); {§*бҐзЄЁ ** ®бЁ •}
  {Ї®¤ЇЁбм ®бЁ •}
  str(i/2:0:1,s);
  outtextXY(x0+round((i-2)*mx/2),y0+10,s);
 end;
{жҐ*ва}
{Ї®¤ЇЁбЁ Є®*ж®ў ®бҐ©}
outtextXY(getmaxX-10,y0-10,'X');
outtextXY(x0+5,10, 'Y');
{Ја*дЁЄЁ}
x:=a;
while x<b-0.001 do
 begin
  putpixel(x0+round(x*mx-mx),y0-round(F1(x)*my),12);
  putpixel(x0+round(x*mx-mx),y0-round(F2(x)*my),9);
  putpixel(x0+round(x*mx-mx),y0-round(F3(x)*my),14);
  x:=x+0.001;
  if abs(F1(x)-F3(x))<0.001 then
   begin
    x1:=x;
    y1:=F1(x)
   end;
  if abs(F1(x)-F2(x))<0.0001 then
   begin
    x2:=x;
    y2:=F1(x)
   end;
 end;
x3:=3;y3:=0;{Їа*ў*п Ё®зЄ* *Ґ ўлзЁб«пҐвбп}
writeln('x1=',x1:0:2,' y1=',y1:0:2);
writeln('x2=',x2:0:2,' y2=',y2:0:2);
writeln('x3=',x3:0:2,' y3=',y3:0:2);
{**§ў**ЁҐ}
setcolor(12);
outtextXY(x0+100,10,'y=-x^2-4');
setcolor(9);
outtextXY(x0+100,30,'y=(x-3)^2/2');
setcolor(14);
outtextXY(x0+100,50,'y=-sqrt(9-x^2)');
h:=10/my;
n:=round((y2-y1)/h);
for i:=n downto 0 do
 begin
  x:=a;
  while x<=x3 do
   begin
    x:=x+0.001;
    y:=y1+h*(n-i);
    if (x>x1)and(x<x3)and(y>F3(x))and(y<F1(x))and(y<F2(x))
    then putpixel(x0+round(x*mx-mx),y0-round(y*my),13)
   end;
  delay(400)
 end;
readln
end.
0
0 / 0 / 0
Регистрация: 23.09.2013
Сообщений: 18
28.10.2013, 17:41  [ТС]
а на каком принцыпе построено закрашивание областей?
0
Почетный модератор
 Аватар для Puporev
64315 / 47611 / 32743
Регистрация: 18.05.2008
Сообщений: 115,167
28.10.2013, 17:47
Нашли 3 точки пересечения
Pascal
1
2
3
4
5
6
7
8
9
10
11
12
if abs(F1(x)-F3(x))<0.001 then
   begin
    x1:=x;
    y1:=F1(x)
   end;
  if abs(F1(x)-F2(x))<0.0001 then
   begin
    x2:=x;
    y2:=F1(x)
   end;
 end;
x3:=3;y3:=0;
Pascal
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
h:=10/my; //шаг между линиями по вертикали
n:=round((y2-y1)/h);//количество линий
for i:=n downto 0 do //рисуем линии снизу вверх
 begin
  x:=a; //левый край
  while x<=x3 do//пока не правый
   begin
    x:=x+0.001; //идем по Х
    y:=y1+h*(n-i);//вычисляем у относительно у1
    //если точка в области
    if (x>x1)and(x<x3)and(y>F3(x))and(y<F1(x))and(y<F2(x))
    //рисуем точками линию
    then putpixel(x0+round(x*mx-mx),y0-round(y*my),13)
   end;
  delay(400) //задержка
 end;
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
inter-admin
Эксперт
29715 / 6470 / 2152
Регистрация: 06.03.2009
Сообщений: 28,500
Блог
28.10.2013, 17:47
Помогаю со студенческими работами здесь

Построить график функции
Функция y=sec(x) В Паскале: function sec (x: real): real; begin sec:=1/cos (x); end; Нужно вывести график функции на...

Построить график функции
Надо построить график во фри паскале (задание - во вложениях) для тока прямоугольной формы и напряжения на катушке L=0.1 Гн, амплитуда...

Построить график функции
y=\sqrt{\frac{4-x^2}{x} в fry pascal

Построить график функции
Помогите вывести на экран график функции Y=A*sinX Пробовала подставить функцию сюда, но не получается. Может неправильно подставляю? ...

Построить график функции
y=4 *( (sqrt(lx-1l))/(x-2)) исправьте ошибки,пожалуйста program Noname1; uses graph; const a =-10;b:=10; var tvark,...


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

Или воспользуйтесь поиском по форуму:
4
Ответ Создать тему
Новые блоги и статьи
Символические и жёсткие ссылки в Linux.
algri14 15.03.2026
Существует два типа ссылок — символические и жёсткие. Ссылка в Linux — это дополнительная запись в каталоге, которая может указывать либо на inode «файла-ИСТОЧНИКА», тогда это будет «жёсткая. . .
[Owen Logic] Поддержание уровня воды в резервуаре количеством включённых насосов: моделирование и выбор регулятора
ФедосеевПавел 14.03.2026
Поддержание уровня воды в резервуаре количеством включённых насосов: моделирование и выбор регулятора ВВЕДЕНИЕ Выполняя задание на управление насосной группой заполнения резервуара,. . .
делаю науч статью по влиянию грибов на сукцессию
anaschu 13.03.2026
прикрепляю статью
SDL3 для Desktop (MinGW): Создаём пустое окно с нуля для 2D-графики на SDL3, Си и C++
8Observer8 10.03.2026
Содержание блога Финальные проекты на Си и на C++: hello-sdl3-c. zip hello-sdl3-cpp. zip Результат:
Установка CMake и MinGW 13.1 для сборки С и C++ приложений из консоли и из Qt Creator в EXE
8Observer8 10.03.2026
Содержание блога MinGW - это коллекция инструментов для сборки приложений в EXE. CMake - это система сборки приложений. Здесь описаны базовые шаги для старта программирования с помощью CMake и. . .
Как дизайн сайта влияет на конверсию: 7 решений, которые реально повышают заявки
Neotwalker 08.03.2026
Многие до сих пор воспринимают дизайн сайта как “красивую оболочку”. На практике всё иначе: дизайн напрямую влияет на то, оставит человек заявку или уйдёт через несколько секунд. Даже если у вас. . .
Модульная разработка через nuget packages
DevAlt 07.03.2026
Сложившийся в . Net-среде способ разработки чаще всего предполагает монорепозиторий в котором находятся все исходники. При создании нового решения, мы просто добавляем нужные проекты и имеем. . .
Модульный подход на примере F#
DevAlt 06.03.2026
В блоге дяди Боба наткнулся на такое определение: В этой книге («Подход, основанный на вариантах использования») Ивар утверждает, что архитектура программного обеспечения — это структуры,. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru