Hi,
also ich hatte als hausaufgabe auf, ein eine x² funktion in ein Koordinatensystem zu zeichen....
Dies habe ich so gelöst:
jetzt meine Frage:
Der Befehl Stift.drawLine kann ja irgendwie nur int zahlen malen...
Also habe ich alle double in int umgewandelt, dann zeichnet er auch alles perfekt, aber warum zeichnet er jetzt auch ungerade werte??
mfg
also ich hatte als hausaufgabe auf, ein eine x² funktion in ein Koordinatensystem zu zeichen....
Dies habe ich so gelöst:
Code:
import java.awt.*;
import java.applet.*;
public class ZeichneFunktion extends Applet
{
int m,x0,y0,xNeu,yNeu;
Graphics Stift;
public void init()
{
m = 50; x0 = 200; y0 = 200;
setBackground(Color.black);
}
public void zeicheKoordinatensystem()
{
Stift.setColor(Color.white);
Stift.drawLine(0,y0,2*x0,y0);
Stift.drawLine(x0,0,x0,2*y0);
for(int i=0;i<400;i=i+20)
{
Stift.drawLine(i,y0+3,i,y0-3);
}
for(int i=0;i<400;i=i+20)
{
Stift.drawLine(x0+3,i,x0-3,i);
}
}
public void Funktion()
{
for (int i=-100;i<100;i++)
{
double x = (double)i/m;
double y = f(x);
if(yNeu(y)<200)
Stift.drawLine(xNeu(x),yNeu(y),xNeu(x),yNeu(y));
}
}
public void paint(Graphics g)
{
Stift = g;
zeicheKoordinatensystem();
Funktion();
}
double f(double x)
{
return x*x;
}
int xNeu(double x)
{
return xNeu = (int) (x0+m*x);
}
int yNeu(double y)
{
return yNeu = (int) (y0-m*y);
}
}
jetzt meine Frage:
Der Befehl Stift.drawLine kann ja irgendwie nur int zahlen malen...
Also habe ich alle double in int umgewandelt, dann zeichnet er auch alles perfekt, aber warum zeichnet er jetzt auch ungerade werte??
mfg