не могу доделать, как записать функцию в програмнній код |
1. Заголовок темы должен быть информативным. В противном случае тема удаляется ...
2. Все тексты программ должны помещаться в теги [code=pas] ... [/code], либо быть опубликованы на нашем PasteBin в режиме вечного хранения.
3. Прежде чем задавать вопрос, см. "FAQ", если там не нашли ответа, воспользуйтесь ПОИСКОМ, возможно такую задачу уже решали!
4. Не предлагайте свои решения на других языках, кроме Паскаля (исключение - только с согласия модератора).
5. НЕ используйте форум для личного общения, все что не относится к обсуждению темы - на PM!
6. Одна тема - один вопрос (задача)
7. Проверяйте программы перед тем, как разместить их на форуме!!!
8. Спрашивайте и отвечайте четко и по существу!!!
не могу доделать, как записать функцию в програмнній код |
Jocker |
Сообщение
#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. |
andriano |
Сообщение
#2
|
Гуру Группа: Пользователи Сообщений: 1 168 Пол: Мужской Реальное имя: Сергей Андрианов Репутация: 28 |
Ту можно идти различными путями в зависимости от того, что требуется получить.
Можно, например, заранее предусмотреть несколько функций и в программе предлагать пользователю выбрать одну из них. Можно просить пользователя ввести строку (или вводить ее из файла), а в программе осуществлять разбор выражения и по нему строить график. Но последний вариант увеличит суммарный объем (количество строк) твоей программы раз в 10. Впрочем, для этого можно нйти подходящий модуль. |
Текстовая версия | 7.05.2024 18:03 |