Navigacija
Lista poslednjih: 16, 32, 64, 128 poruka.

Pomozite da ovi "rezanci" prorade

[es] :: Pascal / Delphi / Kylix :: Pomozite da ovi "rezanci" prorade

[ Pregleda: 2348 | Odgovora: 2 ] > FB > Twit

Postavi temu Odgovori

Autor

Pretraga teme: Traži
Markiranje Štampanje RSS

peromalosutra
Ivan Rajkovic
Software engineer
Luxoft
Berlin

Član broj: 54774
Poruke: 871
*.dialup.blic.net.



+148 Profil

icon Pomozite da ovi "rezanci" prorade29.06.2005. u 08:28 - pre 228 meseci
Pravim jednostavan program koji treba da crta grafik kvadratne funkcije. U pocetku je cak i radio, ali kada sam ga malo preuredio.... ne radi nikako. Kompajler mi prijavljuje gresku na 37,17: overloaded identifier GRAFIK isn't function, a na 58,7: . expected, but ; found (valjda imam previse end-ova, ali gdje?).

Code:

program grafik;
uses crt,graph;
var a,b,c:real;
    x,y,xs,ys:integer;

procedure inicijalizacija;
var driver,mode:integer;
begin
clrscr;
driver:=detect;
initgraph(driver,mode,'');
end;

procedure unos;
begin
write ('a=');
readln (a);
write ('b=');
readln (b);
write ('c=');
readln (c);
end;

procedure ordinate;
var i:integer;
begin
line (0,380,1024,380);
line (510,0,510,768);
for i:=0 to 1024 do
  if i mod 10=0 then
     line (i,378,i,382);
for i:=0 to 768 do
  if i mod 10=0 then
     line (508,i,512,i);
end;

procedure grafik;
begin
for x:=1 to 10 do
  begin
  y:=round(a*sqr(x)+b*x+c);   {racuna y tacku grafika funkcije}
  x:=x+510;                   {prikazuje x i y odnosu na novi}
  y:=-y+380;                  {koordinatni pocetak (510,380) }
  if xs<>0 then
  line (xs,ys,x,y);
  xs:=x;                      {xs,ys- prethodne koordinate za x,y}
  ys:=y;
  write ('x=',x);
  writeln ('y=',y);
  end;
end;

begin
clrscr;
unos;
inicijalizacija;
ordinate;
grafik;
readln;
closegraph;
end.

Kod jos nije gotov, htio sam uvesti i nekoliko novih opcija, ali prvo treba ovo da mi proradi.

 
Odgovor na temu

Toyo

Član broj: 45193
Poruke: 227
*.kovnet.co.yu.



+1 Profil

icon Re: Pomozite da ovi "rezanci" prorade29.06.2005. u 09:12 - pre 228 meseci
Kao prvo promeni ili ime procedure grafik, ili naziv programa. Ne moze isto.
Koristi GetMaxX i GetMaxY za uzimanje sirine i visine u grafickom modu.

Nesto ovako: line(0, GetMaxY div 2, GetMaxX, GetMaxY div 2)

[Ovu poruku je menjao Toyo dana 29.06.2005. u 10:24 GMT+1]
 
Odgovor na temu

peromalosutra
Ivan Rajkovic
Software engineer
Luxoft
Berlin

Član broj: 54774
Poruke: 871
*.dialup.blic.net.



+148 Profil

icon Re: Pomozite da ovi "rezanci" prorade30.06.2005. u 12:51 - pre 228 meseci
Preradio sam program, sad radi sa (gotovo) svim podacima, ostalo cu pogledati poslije. Toyo, meni ne radi maxX i maxY, koju biblioteku da koristim (trebalo bi graph). Evo koda:
Code:

program grafik_funk;
uses crt,graph;
var a,b,c:real;
    x,y:array[-1000..1000] of integer;


procedure inicijalizacija;
var driver,mode:integer;
begin
clrscr;
driver:=detect;
initgraph(driver,mode,'');
end;

procedure unos;
begin
write ('a=');
readln (a);
write ('b=');
readln (b);
write ('c=');
readln (c);
end;

procedure ordinate;
var i:integer;
begin
line (0,380,1024,380);
line (510,0,510,768);
for i:=0 to 1024 do
  if i mod 10=0 then
     line (i,378,i,382);
for i:=0 to 768 do
  if i mod 10=0 then
     line (508,i,512,i);
end;

procedure grafik;
const pauza=100;
var i:integer;

function presjek (x:integer):integer;
var y:real;
begin
y:=a*sqr(x)+b*x+c;
presjek:=round(y);
end;

begin
i:=0;
while (x[i]<1024) and (y[i]>=0) and (y[i]<768) do
  begin
  inc(i,1);
  y[i]:=presjek (i);
  writeln ('x=',i,'  y=',y[i]);
  x[i]:=i+510;
  y[i]:=-y[i]+380;
  if i>1 then
  line (x[i-1],y[i-1],x[i],y[i]);
  delay(pauza);
  end;
i:=0;
while (x[i]>=0) and (y[i]>=0) and (y[i]<768) do
  begin
  inc(i,-1);
  y[i]:=presjek (i);
  gotoxy (20,-i);
  write ('x=',i,'  y=',y[i]);
  x[i]:=i+510;
  y[i]:=-y[i]+380;
  if i<-1 then
  line (x[i+1],y[i+1],x[i],y[i]);
  delay(pauza);
  end;
end;

begin
clrscr;
unos;
inicijalizacija;
ordinate;
grafik;
readln;
closegraph;
write ('program zavrsen');
readln;
end.


 
Odgovor na temu

[es] :: Pascal / Delphi / Kylix :: Pomozite da ovi "rezanci" prorade

[ Pregleda: 2348 | Odgovora: 2 ] > FB > Twit

Postavi temu Odgovori

Navigacija
Lista poslednjih: 16, 32, 64, 128 poruka.