1. Заголовок темы должен быть информативным. В противном случае тема удаляется ... 2. Все тексты программ должны помещаться в теги [code=pas] ... [/code]. 3. Прежде чем задавать вопрос, см. "FAQ", если там не нашли ответа, воспользуйтесь ПОИСКОМ, возможно такую задачу уже решали! 4. Не предлагайте свои решения на других языках, кроме Паскаля (исключение - только с согласия модератора). 5. НЕ используйте форум для личного общения, все что не относится к обсуждению темы - на PM! 6. Одна тема - один вопрос (задача) 7.Проверяйте программы перед тем, как разместить их на форуме!!! 8.Спрашивайте и отвечайте четко и по существу!!!
как сделать чтобы график автоматически масштабировался?, что надо поменять?? СРОЧНО!! ОЧ ПРОШУ
Программа моделирует нормальное распределение и строит график, но как сделать, чтобы график автоматом маштабировался?
Мой код(Показать/Скрыть)
program Norm; uses crt,graph; type zap=record x,y:real end; masZ=array [1..1000] of zap; var rez,a,m,x:real; FrSV:masZ; GenSV:masZ; F1,F2:text; st1,st2:string; j,w,t,i,n:integer; h1,h2,h:real; con,d:real; u:integer; dt,dl,ch:array [1..5] of integer; ch1:array [1..5] of real;
procedure sort(var M:masZ); var v:zap; k,i,j:integer; begin for i:=1 to (n-1) do begin k:=i; for j:=(i+1) to n do if M[j].x<M[k].x then k:=j; v:=M[i]; M[i]:=M[k]; M[k]:=v end end;
procedure Grafiki; var k,e:integer; xk1,yk1:integer; xk2,yk2:integer; r:real; begin clrscr; k:=Detect; InitGraph(k,e,'C:\BP\BGI');
SetBkColor(15); r:=400; SetLineStyle(0,0,2); SetColor(3); line(29,450,29+round(r*FrSV[1].x),450-round(r*FrSV[1].y)); for i:=2 to n do {Teor.Sl.Vel} begin xk1:=29+round(r*FrSV[i-1].x); yk1:=450-round(r*FrSV[i-1].y); xk2:=29+round(r*FrSV[i].x); yk2:=450-round(r*FrSV[i].y); line(xk1,yk1,xk2,yk2); end;
SetLineStyle(0,0,2); SetColor(4); line(29,450,29+round(r*GenSV[1].x),450-round(r*GenSV[1].y)); for i:=2 to n do {Generir. Sl.Vel} begin xk1:=29+round(r*GenSV[i-1].x); yk1:=450-round(r*GenSV[i-1].y); xk2:=29+round(r*GenSV[i].x); yk2:=450-round(r*GenSV[i].y); line(xk1,yk1,xk2,yk2); end;
readkey; CloseGraph end;
begin clrscr; randomize; write('vvedite N => '); readln(n); write('vvedite mat.ojidanie m => '); readln(m); h:=1/n; GenSV[1].y:=0; for i:=1 to n do begin a:=-6; for j:=1 to 12 do a:=a+random; GenSV[i].x:=m+a*m/5; end; Sort(GenSV); for i:=2 to n do GenSV[i].y:=GenSV[i-1].y+h;
if GenSV[n].x>1 then h:=1.5/n else h:=1/n; FrSV[1].x:=0; FrSV[1].y:=0; con:=5/(m*sqrt(2*pi)); for i:=2 to n do begin FrSV[i].x:=FrSV[i-1].x+h; h1:=exp(-sqr(FrSV[i-1].x-m)/(2*sqr(m/5))); h2:=exp(-sqr(FrSV[i].x-m)/(2*sqr(m/5))); d:=(h1+h2)/2; FrSV[i].y:=(h*d*con)+FrSV[i-1].y; end;
writeln; write('vvedite imja faila s sgenerir.sl.vel. => '); readln(st1); write('vvedite imja faila s teoret.znach. => '); readln(st2);