IPB
ЛогинПароль:

> Прочтите прежде чем задавать вопрос!

1. Заголовок темы должен быть информативным. В противном случае тема удаляется ...
2. Все тексты программ должны помещаться в теги [code=pas] ... [/code], либо быть опубликованы на нашем PasteBin в режиме вечного хранения.
3. Прежде чем задавать вопрос, см. "FAQ", если там не нашли ответа, воспользуйтесь ПОИСКОМ, возможно такую задачу уже решали!
4. Не предлагайте свои решения на других языках, кроме Паскаля (исключение - только с согласия модератора).
5. НЕ используйте форум для личного общения, все что не относится к обсуждению темы - на PM!
6. Одна тема - один вопрос (задача)
7. Проверяйте программы перед тем, как разместить их на форуме!!!
8. Спрашивайте и отвечайте четко и по существу!!!

> не могу доделать, как записать функцию в програмнній код
сообщение
Сообщение #1


Новичок
*

Группа: Пользователи
Сообщений: 15
Пол: Мужской

Репутация: -  0  +


написал прожку которая строит графики, но только чтоб ввести функцию графика нужно открывать програмный код, и в нём изменять. можно как-то обойтись без этого (не открывая код)

program graphiki;
uses crt,graph;

var gd,gm,xx,yy:integer;
fun:string;

procedure osicoordinat;
const step=25;
var x1,y1,r:integer;
s:string;
begin
line(0,240,640,240);
line(320,0,320,480);
line(630,235,640,240);
line(630,245,640,240);
line(315,10,320,0);
line(325,10,320,0);
outtextxy(330,5,'Y');
outtextxy(630,220,'X');
y1:=240; x1:=320; r:=0;
while x1+r<640 do
begin
line(x1+r,y1-2,x1+r,y1+2);
line(x1-r,y1-2,x1-r,y1+2);
r:=r+step;
str(r div step, S);
settextjustify (1,1);
outtextxy(x1+r,y1+10,S);
s:='-'+S;
outtextxy(x1-r,y1+10,S);
end;
r:=0;
while y1+r<480 do
begin
line(x1+4,y1+r,x1-4,y1+r);
line(x1+4,y1-r,x1-4,y1-r);
r:=r+step;
str(r div step, S);
settextjustify (1,1);
outtextxy(x1-10,y1-r,S);
s:='-'+S;
outtextxy(x1-10,y1+r,S);
end;
end;

procedure gra;
var x,y,a,b:real;
begin
setcolor(2);
x:=-15; y:=0; a:=1; b:=0;
repeat
y:=x*x; {вот эту строчку приходится менять}
putpixel(round(x*a*25)+320,240-round(y*25)-round(b*25),2);
x:=x+0.0003;
until x>15;
end;

begin
initgraph(gd,gm,'..\bgi');
osicoordinat;
gra;
readln
end.
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
 
 Ответить  Открыть новую тему 
Ответов
сообщение
Сообщение #2


Гуру
*****

Группа: Пользователи
Сообщений: 1 168
Пол: Мужской
Реальное имя: Сергей Андрианов

Репутация: -  28  +


Совсем любой, боюсь не выйдет - разве только ты реализуешь язык, на котором можно записать любую функцию. В остальных же случаях - любое выражение, содержащее тот набор функций, которые ты предусмотрел заранее, например, любое выражение, содержащее 4 арифметических операции и скобки. Или + набор тригонометрических функций. Или еще + экспонены и логарифмы.
Можно, например, набратьв Google "разбор выражения паскаль" и походить по ссылкам.
Здесть простейший вариант http://pascal.sources.ru/parsing/calc_my.htm
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 

Сообщений в этой теме


 Ответить  Открыть новую тему 
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0

 





- Текстовая версия 7.05.2024 13:53
500Gb HDD, 6Gb RAM, 2 Cores, 7 EUR в месяц — такие хостинги правда бывают
Связь с администрацией: bu_gen в домене octagram.name