Ich muss für die Schule mithilfe von BlueJ (Das ist ein Programm mit dem das Programmieren von Java vereinfacht werden soll. Mein Quelltext funktioniert nur mit dem Beispielprojekt shapes, welches man dazubekommt wenn man sich das Programm downloadet.) ein Koordinatensystem erstellen. Dieses soll gezeichnet und gelöscht werden. Außerdem soll das Programm eine Quadratische Funktion zeichnen können und diese auch wieder löschen können. Mein Problem ist nun, dass man die länge der Koordinatenachsen manuell einstellen soll. Da sich das Programm die Variable vom zeichnen ja nicht merken kann muss man diese beim löschen erneut eingeben. Das Problem ist nur, dass man dort auch einfach eine kleinere Variable eingeben könnte und dann die Enden der Achsen immer noch da sind und das möchte ich vermeiden. Ich habe es versucht mit globalen Variablen hinzubekommen aber es hat nicht funktioniert.
Außerdem ist die Quadratische Funktion keine richtige Quadratische Funktion. Ich habe das zuerst mit
versucht, aber dadurch wurde die Funktion viel zu schmal.
Mein Kompletter Quelltext:
Außerdem ist die Quadratische Funktion keine richtige Quadratische Funktion. Ich habe das zuerst mit
Java:
f1.moveHorizontal(i);
f1.moveVertical(-i*i);
f2.moveHorizontal(-i);
f2.moveVertical(-i*i);
Mein Kompletter Quelltext:
Java:
public class Koordinatensystem
{
static int x = 50;
Square[] x1, x2, y1, y2, f1, f2;
// Diese Methode zeichnet das Koordinatensystem.
public void zeichneKoordinatenachsen(int x)
{
x1 = new Square[x];
x2 = new Square[x];
y1 = new Square[x];
y2 = new Square[x];
for(int i=0;i<x;i++)
{
x1 = new Square();
x1.moveHorizontal(90);
x1.moveVertical(100);
x1.changeSize(3);
x1.makeVisible();
x1.changeColor("black");
x1.moveHorizontal(i*2);
x2 = new Square();
x2.moveHorizontal(90);
x2.moveVertical(100);
x2.changeSize(3);
x2.makeVisible();
x2.changeColor("black");
x2.moveHorizontal(-i*2);
y1 = new Square();
y1.moveHorizontal(90);
y1[i].moveVertical(100);
y1[i].changeSize(3);
y1[i].makeVisible();
y1[i].changeColor("black");
y1[i].moveVertical(i*2);
y2[i] = new Square();
y2[i].moveHorizontal(90);
y2[i].moveVertical(100);
y2[i].changeSize(3);
y2[i].makeVisible();
y2[i].changeColor("black");
y2[i].moveVertical(-i*2);
if(i%10==0)
{
x1[i].changeSize(4);
x2[i].changeSize(4);
y1[i].changeSize(4);
y2[i].changeSize(4);
}
}
}
// Diese Methode löscht das Koordinatensystem.
public void loescheKoordinatensystem(int x)
{
for(int i=0;i<x;i++)
{
x1[i].makeInvisible();
x2[i].makeInvisible();
y1[i].makeInvisible();
y2[i].makeInvisible();
}
}
// Diese Methode zeichnet eine Quadratische Funktion.
public void zeichneFunktion(int x)
{
f1 = new Square[x];
f2 = new Square[x];
for(int i=0;i<x;i++)
{
f1[i] = new Square();
f1[i].moveHorizontal(90);
f1[i].moveVertical(100);
f1[i].changeSize(3);
f1[i].makeVisible();
f1[i].changeColor("black");
f2[i] = new Square();
f2[i].moveHorizontal(90);
f2[i].moveVertical(100);
f2[i].changeSize(3);
f2[i].makeVisible();
f2[i].changeColor("black");
f1[i].moveHorizontal(5*i);
f1[i].moveVertical(-i*i);
f2[i].moveHorizontal(-5*i);
f2[i].moveVertical(-i*i);
}
}
// Diese Methode löscht die Quadratische Funktion.
public void loescheFunktion(int x)
{
for(int i=0;i<x;i++)
{
f1[i].makeInvisible();
f2[i].makeInvisible();
}
}
Zuletzt bearbeitet von einem Moderator: