• Herzlich Willkommen!

    Nach der Schließung von inDiablo.de wurden die Inhalte und eure Accounts in dieses Forum konvertiert. Ihr könnt euch hier mit eurem alten Account weiterhin einloggen, müsst euch dafür allerdings über die "Passwort vergessen" Funktion ein neues Passwort setzen lassen.

    Solltet ihr keinen Zugriff mehr auf die mit eurem Account verknüpfte Emailadresse haben, so könnt ihr euch unter Angabe eures Accountnamens, eurer alten Emailadresse sowie eurer gewünschten neuen Emailadresse an einen Administrator wenden.

:irre:

Also vollständig ist es.

Was auf der DVD drauf ist kann ich dir nicht sagen.
Ich weiß aber wieso dass konstenlos ist.

Das Buch ist immer zur AKTUELLSTEN Version und die Online Version nicht.

Interessiert aber nicht wirklich ^^ wird erst interessant, wenn du das als Profi machst.
 
na dann ^^
also gibts da nich wirklich viele unterschiede zwischen aktuell und noch nich so aktuell, ausser eben das zweiteres 50 euronen billiger is :p
 
Also meistens sind die Unterschiede in den neuen Methoden usw. Aber die sind so spezielle und kompliziert, dass ich es nicht raffe *g*

Ansonsten Eclipse z.B nimmt auch noch die alten Methoden. Sagt dir dann halt, dass es eine neuere gibt, schlägt dir sie sogar vor ^^

Mit den alten gehts aber auch.

Ich würds online runterladen bzw als HTML speichern.

Klar das Buch ist dick, aber vieles brauchst du für den Anfang nicht wissen.
 
ok :) ty :)

btw, hast du ne Ahnung ob sowas für Info studies billiger ist, bzw. lektüre in Bibliotheken? Ich kenne 5 Infostudenten, vllt kommen die an sowas ran, wenn das für solche Leute kostenfrei zum ausleihen zur verfügung steht :D



>>>Also meistens sind die Unterschiede in den neuen Methoden usw. Aber die sind so spezielle und kompliziert, dass ich es nicht raffe *g*
<<<

dat erklär ich dir irgendwann mal *g* :p :D
 
Ob das billiger ist ? Ich denke mal nicht.

dat erklär ich dir irgendwann mal *g*
Durchaus möglich ;) wir machen mehr das Allgemeine Programmieren.

Struktogramme usw. Also sodass wir schnell eine neue Sprache lernen können.

Java hab ich nun noch ca 1 Jahr :p 2 Std die Woche ^^
 
TenthManDown schrieb:
Ob das billiger ist ? Ich denke mal nicht.


Durchaus möglich ;) wir machen mehr das Allgemeine Programmieren.

Struktogramme usw. Also sodass wir schnell eine neue Sprache lernen können.

Java hab ich nun noch ca 1 Jahr :p 2 Std die Woche ^^
ich hab ab oktober
mathe: 6 std vorlesung, 3 std übung, 1 pro semi
info: 4 std, 2 std übung, und alle x wochen 1 pro semi

bio/deutsch: brauch ich nur scheine, von daher kann ich mich da einschreiben wann ich lustig bin ^^ hauptsache ich hab den teilnahmeschein :p


also das was ich bisher gelesen hab ist interessant. Proggen schient doch nicht so öde zu sein wie ich immer dachte ^^ :)

Naja, was isn besser, C++ oder Java? das sind die beiden großen die ich kenne ^^ oder gibts noch andere die sehr gut sind? Da ich nur 25% Info habe, werde ich wohl nur Java und eventuell C++ behandeln. Die anderen Infoleute haben noch mehr kram. Aber das muss ich ja nich mitmachen ^^ :D

:hy:
 
Also C++ ist besser ;) kann man mehr damit machen.
Java baut aber auf c++ auf.

Wenn du eines mal kannst, ist das andere nicht mehr schwer ^^
Dh du musst bei beiden nicht zu viel lernen :p

Große `?

C, Pascal, Delphie, ( hoffe dat schreibt man so ) und KA +g+


Mit 4 Std pro woche wird aber viel gemacht :) Naja wenn du deine Calcs dann alle in Java schreibst , hast du Übung :)
 
hey ich hab ein prog geschrieben :D

class meinProg
{
public static void main ( String[] args )
{
System.out.println("1+1=3 - da haste wohl wahr :p");

}
}


wenn ich das jetzt compile und und die meinProg.class öffne, dann müsste da stehen:

1+1=3 - da haste wohl wahr :p


:D :D :D und das sollte eigentlich auch funzen :D Kanns nich testen, hab den kram noch nich installed ^^
das main steht glaube dafür, das er da anfängt. Und die {} geben anfang und ende an. Und wofür das String args steht weiss ich nich ^^



:hy:



/€ btw, über Delphi hab ich nen buch ^^ aber nie gelesen :p irgendwann man geschenkt bekommen, aber aus desinteresse nie angefasst :p Da is Scrubs schauen viel cooler :D
 
public static void main ( String[] args )


[] steht dafür, dass es ein Array ist. Ein Array ist eine Ansammlung von Variablen ^^ da kannst du mehr reinspeichern als nur eins.

und String[] ist also ein Array für die Variablen vom Typ String.
das args ist einfach der Name. Kannst auch buh nennen ^^
Andere schreibweise wäre z.b String args[] geht auch.


Main sagt dem blöden Interpretiere: Da musst du anfangen zu lesen :D
import java.awt.*;
import java.awt.event.*;

/**
* Diese Klasse liefert die Oberfläche und stellt somit die Welt dar, in der Willi und Siggi leben.<br><br>
* Projekt zur Einführung der Objektorientierten Programmierung, Copyright (c) 2001
* @author W. Kicherer
* @version 1.0
*/

public class Planet extends Frame {

// Die Attribute der Klasse

private Color weltFarbe;
private Kobold willi;
private Kobold siggi;
private Button williZeigen = new Button();
private Button siggiZeigen = new Button();
private Button verstecken = new Button();
private Button exit = new Button();
private FlowLayout myFlowLayout = new FlowLayout();

// Die Methoden der Klasse

/** Konstruktor, wird beim Erzeugen der Klasse aufgerufen.*/
public Planet() {

weltFarbe=Color.yellow;

//die beiden Kobolde werden geboren
willi = new Kobold();
willi.setzeAussehen(250, 100, 50, Color.red, Color.blue);

siggi = new Kobold();
siggi.setzeAussehen(200, 200, 60, Color.green, Color.red);

this.setLayout(myFlowLayout);
setBackground(weltFarbe);

//Button zum Zeigen von Willi
williZeigen.setLabel("Willi zeigen");
//Wird der zeigen-Button gedrückt, wird zeigen_mouseClicked(e) aufgerufen.
//Diese Methode wird dem Betriebssystem bekannt gemacht, so dass es bei
//einem Mausklick auf den Button die angegebene Methode aufruft.
williZeigen.addMouseListener(new java.awt.event.MouseAdapter() {
public void mouseClicked(MouseEvent e) {
williZeigen_mouseClicked(e);
}
});
this.add(williZeigen, null);

//Button zum Zeigen von Siggi
siggiZeigen.setLabel("Siggi zeigen");
//Wird der zeigen-Button gedrückt, wird zeigen_mouseClicked(e) aufgerufen.
//Diese Methode wird dem Betriebssystem bekannt gemacht, so dass es bei
//einem Mausklick auf den Button die angegebene Methode aufruft.
siggiZeigen.addMouseListener(new java.awt.event.MouseAdapter() {
public void mouseClicked(MouseEvent e) {
siggiZeigen_mouseClicked(e);
}
});
this.add(siggiZeigen, null);

//Button zum Verstecken von Willi und Siggi
verstecken.setLabel("verstecken");
//Wird der verstecken-Button gedrückt, wird verstecken_mouseClicked(e)
//aufgerufen.
//Diese Methode wird dem Betriebssystem bekannt gemacht, so dass es bei
//einem Mausklick auf den Button die angegebene Methode aufruft.
verstecken.addMouseListener(new java.awt.event.MouseAdapter() {
public void mouseClicked(MouseEvent e) {
verstecken_mouseClicked(e);
}
});
this.add(verstecken, null);

//Button zum Verlassen des Programms
exit.setLabel("EXIT");
//Wird der Button gedrückt, wird exit_mouseClicked(e) aufgerufen.
//Diese Methode wird dem Betriebssystem bekannt gemacht, so dass es bei
//einem Mausklick auf den Button die angegebene Methode aufruft.
exit.addMouseListener(new java.awt.event.MouseAdapter() {
public void mouseClicked(MouseEvent e) {
exit_mouseClicked(e);
}
});
this.add(exit, null);

//Wird auf die Zeichenflaeche (Canvas) geklickt, wird
//canvas_mousePressed(e) aufgerufen.
//Diese Methode wird dem Betriebssystem bekannt gemacht, so dass es bei
//einem Mausklick auf die Zeichenflaeche die angegebene Methode aufruft.
this.addMouseListener(new java.awt.event.MouseAdapter() {
public void mousePressed(MouseEvent e) {
canvas_mousePressed(e);
}
});

}//Ende des Konstruktors

/** Diese Methode wird vom Betriebssystem aufgerufen, wenn das Fenster
* neu gezeichnet werden muss, z.B. wenn ein anderes Fenster, welches
* dieses Fenster verdeckt hatte, weggeschoben wird.
* @param g Gibt an, wohin gezeichnet werden soll.
*/
public void paint(Graphics g) {
willi.malen(g);
siggi.malen(g);
}

/** Die Methode wird aufgerufen, wenn der williZeigen-Button gedrueckt wurde.
* Die Verbindung des Mausklicks mit der Methode, wurde im Konstruktor Planet()
* hergestellt
* @see <a HREF="Planet.html#Planet()">Planet()</a>
* @param e Das Ereigniss, welches von der Maus ausgelöst wurde.
*/
public void williZeigen_mouseClicked(MouseEvent e) {
willi.zeigen();
//die Methode repaint(), fordert das Betriebssysten auf, das Fenster neu zu
//zeichnen, da sich etwas geaendert hat. Das Betriebssystem ruft dann
//die obige Methode paint(Graphics g) auf.
repaint();
}

/** Die Methode wird aufgerufen, wenn der siggiZeigen-Button gedrueckt wurde.
* Die Verbindung des Mausklicks mit der Methode, wurde im Konstruktor Planet()
* hergestellt.
* @see <a HREF="Planet.html#Planet()">Planet()</a>
* @param e Das Ereigniss, welches von der Maus ausgelöst wurde.
*/
public void siggiZeigen_mouseClicked(MouseEvent e) {
siggi.zeigen();
//die Methode repaint(), fordert das Betriebssysten auf, das Fenster neu zu
//zeichnen, da sich etwas geaendert hat. Das Betriebssystem ruft dann
//die obige Methode paint(Graphics g) auf.
repaint();
}

/** Die Methode wird aufgerufen, wenn der verstecken-Button gedrueckt wurde.
* Die Verbindung des Mausklicks mit der Methode, wurde im Konstruktor Planet()
* hergestellt.
* @see <a HREF="Planet.html#Planet()">Planet()</a>
* @param e Das Ereigniss, welches von der Maus ausgelöst wurde.
*/
public void verstecken_mouseClicked(MouseEvent e) {
willi.verstecken();
siggi.verstecken();
//die Methode repaint(), fordert das Betriebssysten auf, das Fenster neu zu
//zeichnen, da sich etwas geaendert hat. Das Betriebssystem ruft dann
//die obige Methode paint(Graphics g) auf.
repaint();
}

/** Die Methode wird aufgerufen, wenn der exit-Button gedrueckt wurde.
* Die Verbindung des Mausklicks mit der Methode, wurde im Konstruktor Planet()
* hergestellt.
* @see <a HREF="Planet.html#Planet()">Planet()</a>
* @param e Das Ereigniss, welches von der Maus ausgelöst wurde.
*/
public void exit_mouseClicked(MouseEvent e) {
System.exit(0);
}

/** Die Methode wird aufgerufen, wenn im Zeichenfenster geklickt wurde.
* Die Verbindung des Mausklicks mit der Methode, wurde im Konstruktor Planet()
* hergestellt.
* @see <a HREF="Planet.html#Planet()">Planet()</a>
* @param e Das Ereigniss, welches von der Maus ausgelöst wurde. Damit laesst sich der Ort des
Mausklicks ermitteln (mit e.getX() und e.getY()).
*/
public void canvas_mousePressed(MouseEvent e) {
int x=e.getX();
int y=e.getY();
//Der Parameter g gibt an, wo gezeichnet werden soll. Hier: im aktuellen
//Fenster.
Graphics g=this.getGraphics();
g.setColor(Color.black);
g.fillOval(x,y, 4,4);
}
}



---------------------------


/**
* Diese Klasse wird nur zum Starten der Application verwendet.<br><br>
* Projekt zur Einführung der Objektorientierten Programmierung, Copyright (c) 2001
* @author W. Kicherer
* @version 1.0
*/

public class myApplication {

/**Konstruktor für die Applikation*/
public myApplication() {
//der Planet auf dem Willi und Siggi wohnen wird erzeugt
Planet willisWelt = new Planet();
//die Größe des Planeten wird festgelegt
willisWelt.setSize(500,350);
willisWelt.setTitle("Willis Welt");
willisWelt.setVisible(true);
}

/**Main Methode zum Starten der Applikation
* @param args Die beim Start uebergebenen Argumente (hier nicht verwendet)
*/
public static void main(String[] args) {
new myApplication();
}
}


--------------------


import java.awt.*;

/**
* Diese Klasse ist der Bauplan für einen Kobold.<br><br>
* Projekt zur Einführung der Objektorientierten Programmierung, Copyright (c) 2001
* @author Walter Kicherer
* @version 1.0
*/

public class Kobold {

//die Attribute der Klasse
private int ortX;
private int ortY;
private int groesse;
private Color hautFarbe;
private Color augenFarbe;
private boolean show;

//die Methoden der Klasse
/** Diese Methode aendert das Aussehen des Kobolds. Er wird standardmaessig versteckt.
* @param x X-Koordinate des Aufenthaltsortes des Kobolds
* @param y Y-Koordinate des Aufenthaltsortes des Kobolds
* @param g Groesse des Kobolds
* @param fHaut Hautfarbe des Kobolds
* @param fAugen Augenfarbe des Kobolds
*/
public void setzeAussehen(int x, int y, int g, Color fHaut, Color fAugen) {
ortX=x;
ortY=y;
groesse=g;
hautFarbe=fHaut;
augenFarbe=fAugen;

show=false;
}

/** Der Kobold soll sich zeigen. */
public void zeigen() {
show=true;
}

/** Der Kobold soll sich verstecken. */
public void verstecken() {
show=false;
}

/** Diese Methode zeichnet den Kobold auf die Oberflaeche, die mit dem
* Parameter g vom Typ Graphics angegeben wurde.
* @param g Gibt an, wohin gezeichnet werden soll.
*/
public void malen(Graphics g) {
if (show) {
//g.drawLine(0, Planet.hoehe/2, Planet.breite, Planet.hoehe/2);
//g.drawLine(Planet.breite/2, 0, Planet.breite/2, Planet.hoehe);

//der Kopf
g.setColor(hautFarbe);
g.fillOval(ortX-groesse/2, ortY-groesse/2, groesse, groesse);

//die Nase
g.setColor(Color.black);
int part=groesse/8;
g.drawLine(ortX, ortY-part, ortX, ortY+2*part);

//der Mund
part=2*groesse/3;
g.drawArc(ortX-part/2, ortY-part/2, part, part, -125, 80);

//die Augen
g.setColor(augenFarbe);
part=groesse/8;
g.fillOval((int)(ortX-3*part), ortY-2*part, 2*part,part);
g.fillOval((int)(ortX+1*part), ortY-2*part, 2*part,part);
}
}


}



Da hast mal was größeres :p
 
TenthManDown schrieb:
public static void main ( String[] args )


[] steht dafür, dass es ein Array ist. Ein Array ist eine Ansammlung von Variablen ^^ da kannst du mehr reinspeichern als nur eins.

und String[] ist also ein Array für die Variablen vom Typ String.
das args ist einfach der Name. Kannst auch buh nennen ^^
Andere schreibweise wäre z.b String args[] geht auch.


Main sagt dem blöden Interpretiere: Da musst du anfangen zu lesen :D
import java.awt.*;
import java.awt.event.*;

/**
* Diese Klasse liefert die Oberfläche und stellt somit die Welt dar, in der Willi und Siggi leben.<br><br>
* Projekt zur Einführung der Objektorientierten Programmierung, Copyright (c) 2001
* @author W. Kicherer
* @version 1.0
*/

public class Planet extends Frame {

// Die Attribute der Klasse

private Color weltFarbe;
private Kobold willi;
private Kobold siggi;
private Button williZeigen = new Button();
private Button siggiZeigen = new Button();
private Button verstecken = new Button();
private Button exit = new Button();
private FlowLayout myFlowLayout = new FlowLayout();

// Die Methoden der Klasse

/** Konstruktor, wird beim Erzeugen der Klasse aufgerufen.*/
public Planet() {

weltFarbe=Color.yellow;

//die beiden Kobolde werden geboren
willi = new Kobold();
willi.setzeAussehen(250, 100, 50, Color.red, Color.blue);

siggi = new Kobold();
siggi.setzeAussehen(200, 200, 60, Color.green, Color.red);

this.setLayout(myFlowLayout);
setBackground(weltFarbe);

//Button zum Zeigen von Willi
williZeigen.setLabel("Willi zeigen");
//Wird der zeigen-Button gedrückt, wird zeigen_mouseClicked(e) aufgerufen.
//Diese Methode wird dem Betriebssystem bekannt gemacht, so dass es bei
//einem Mausklick auf den Button die angegebene Methode aufruft.
williZeigen.addMouseListener(new java.awt.event.MouseAdapter() {
public void mouseClicked(MouseEvent e) {
williZeigen_mouseClicked(e);
}
});
this.add(williZeigen, null);

//Button zum Zeigen von Siggi
siggiZeigen.setLabel("Siggi zeigen");
//Wird der zeigen-Button gedrückt, wird zeigen_mouseClicked(e) aufgerufen.
//Diese Methode wird dem Betriebssystem bekannt gemacht, so dass es bei
//einem Mausklick auf den Button die angegebene Methode aufruft.
siggiZeigen.addMouseListener(new java.awt.event.MouseAdapter() {
public void mouseClicked(MouseEvent e) {
siggiZeigen_mouseClicked(e);
}
});
this.add(siggiZeigen, null);

//Button zum Verstecken von Willi und Siggi
verstecken.setLabel("verstecken");
//Wird der verstecken-Button gedrückt, wird verstecken_mouseClicked(e)
//aufgerufen.
//Diese Methode wird dem Betriebssystem bekannt gemacht, so dass es bei
//einem Mausklick auf den Button die angegebene Methode aufruft.
verstecken.addMouseListener(new java.awt.event.MouseAdapter() {
public void mouseClicked(MouseEvent e) {
verstecken_mouseClicked(e);
}
});
this.add(verstecken, null);

//Button zum Verlassen des Programms
exit.setLabel("EXIT");
//Wird der Button gedrückt, wird exit_mouseClicked(e) aufgerufen.
//Diese Methode wird dem Betriebssystem bekannt gemacht, so dass es bei
//einem Mausklick auf den Button die angegebene Methode aufruft.
exit.addMouseListener(new java.awt.event.MouseAdapter() {
public void mouseClicked(MouseEvent e) {
exit_mouseClicked(e);
}
});
this.add(exit, null);

//Wird auf die Zeichenflaeche (Canvas) geklickt, wird
//canvas_mousePressed(e) aufgerufen.
//Diese Methode wird dem Betriebssystem bekannt gemacht, so dass es bei
//einem Mausklick auf die Zeichenflaeche die angegebene Methode aufruft.
this.addMouseListener(new java.awt.event.MouseAdapter() {
public void mousePressed(MouseEvent e) {
canvas_mousePressed(e);
}
});

}//Ende des Konstruktors

/** Diese Methode wird vom Betriebssystem aufgerufen, wenn das Fenster
* neu gezeichnet werden muss, z.B. wenn ein anderes Fenster, welches
* dieses Fenster verdeckt hatte, weggeschoben wird.
* @param g Gibt an, wohin gezeichnet werden soll.
*/
public void paint(Graphics g) {
willi.malen(g);
siggi.malen(g);
}

/** Die Methode wird aufgerufen, wenn der williZeigen-Button gedrueckt wurde.
* Die Verbindung des Mausklicks mit der Methode, wurde im Konstruktor Planet()
* hergestellt
* @see <a HREF="Planet.html#Planet()">Planet()</a>
* @param e Das Ereigniss, welches von der Maus ausgelöst wurde.
*/
public void williZeigen_mouseClicked(MouseEvent e) {
willi.zeigen();
//die Methode repaint(), fordert das Betriebssysten auf, das Fenster neu zu
//zeichnen, da sich etwas geaendert hat. Das Betriebssystem ruft dann
//die obige Methode paint(Graphics g) auf.
repaint();
}

/** Die Methode wird aufgerufen, wenn der siggiZeigen-Button gedrueckt wurde.
* Die Verbindung des Mausklicks mit der Methode, wurde im Konstruktor Planet()
* hergestellt.
* @see <a HREF="Planet.html#Planet()">Planet()</a>
* @param e Das Ereigniss, welches von der Maus ausgelöst wurde.
*/
public void siggiZeigen_mouseClicked(MouseEvent e) {
siggi.zeigen();
//die Methode repaint(), fordert das Betriebssysten auf, das Fenster neu zu
//zeichnen, da sich etwas geaendert hat. Das Betriebssystem ruft dann
//die obige Methode paint(Graphics g) auf.
repaint();
}

/** Die Methode wird aufgerufen, wenn der verstecken-Button gedrueckt wurde.
* Die Verbindung des Mausklicks mit der Methode, wurde im Konstruktor Planet()
* hergestellt.
* @see <a HREF="Planet.html#Planet()">Planet()</a>
* @param e Das Ereigniss, welches von der Maus ausgelöst wurde.
*/
public void verstecken_mouseClicked(MouseEvent e) {
willi.verstecken();
siggi.verstecken();
//die Methode repaint(), fordert das Betriebssysten auf, das Fenster neu zu
//zeichnen, da sich etwas geaendert hat. Das Betriebssystem ruft dann
//die obige Methode paint(Graphics g) auf.
repaint();
}

/** Die Methode wird aufgerufen, wenn der exit-Button gedrueckt wurde.
* Die Verbindung des Mausklicks mit der Methode, wurde im Konstruktor Planet()
* hergestellt.
* @see <a HREF="Planet.html#Planet()">Planet()</a>
* @param e Das Ereigniss, welches von der Maus ausgelöst wurde.
*/
public void exit_mouseClicked(MouseEvent e) {
System.exit(0);
}

/** Die Methode wird aufgerufen, wenn im Zeichenfenster geklickt wurde.
* Die Verbindung des Mausklicks mit der Methode, wurde im Konstruktor Planet()
* hergestellt.
* @see <a HREF="Planet.html#Planet()">Planet()</a>
* @param e Das Ereigniss, welches von der Maus ausgelöst wurde. Damit laesst sich der Ort des
Mausklicks ermitteln (mit e.getX() und e.getY()).
*/
public void canvas_mousePressed(MouseEvent e) {
int x=e.getX();
int y=e.getY();
//Der Parameter g gibt an, wo gezeichnet werden soll. Hier: im aktuellen
//Fenster.
Graphics g=this.getGraphics();
g.setColor(Color.black);
g.fillOval(x,y, 4,4);
}
}



---------------------------


/**
* Diese Klasse wird nur zum Starten der Application verwendet.<br><br>
* Projekt zur Einführung der Objektorientierten Programmierung, Copyright (c) 2001
* @author W. Kicherer
* @version 1.0
*/

public class myApplication {

/**Konstruktor für die Applikation*/
public myApplication() {
//der Planet auf dem Willi und Siggi wohnen wird erzeugt
Planet willisWelt = new Planet();
//die Größe des Planeten wird festgelegt
willisWelt.setSize(500,350);
willisWelt.setTitle("Willis Welt");
willisWelt.setVisible(true);
}

/**Main Methode zum Starten der Applikation
* @param args Die beim Start uebergebenen Argumente (hier nicht verwendet)
*/
public static void main(String[] args) {
new myApplication();
}
}


--------------------


import java.awt.*;

/**
* Diese Klasse ist der Bauplan für einen Kobold.<br><br>
* Projekt zur Einführung der Objektorientierten Programmierung, Copyright (c) 2001
* @author Walter Kicherer
* @version 1.0
*/

public class Kobold {

//die Attribute der Klasse
private int ortX;
private int ortY;
private int groesse;
private Color hautFarbe;
private Color augenFarbe;
private boolean show;

//die Methoden der Klasse
/** Diese Methode aendert das Aussehen des Kobolds. Er wird standardmaessig versteckt.
* @param x X-Koordinate des Aufenthaltsortes des Kobolds
* @param y Y-Koordinate des Aufenthaltsortes des Kobolds
* @param g Groesse des Kobolds
* @param fHaut Hautfarbe des Kobolds
* @param fAugen Augenfarbe des Kobolds
*/
public void setzeAussehen(int x, int y, int g, Color fHaut, Color fAugen) {
ortX=x;
ortY=y;
groesse=g;
hautFarbe=fHaut;
augenFarbe=fAugen;

show=false;
}

/** Der Kobold soll sich zeigen. */
public void zeigen() {
show=true;
}

/** Der Kobold soll sich verstecken. */
public void verstecken() {
show=false;
}

/** Diese Methode zeichnet den Kobold auf die Oberflaeche, die mit dem
* Parameter g vom Typ Graphics angegeben wurde.
* @param g Gibt an, wohin gezeichnet werden soll.
*/
public void malen(Graphics g) {
if (show) {
//g.drawLine(0, Planet.hoehe/2, Planet.breite, Planet.hoehe/2);
//g.drawLine(Planet.breite/2, 0, Planet.breite/2, Planet.hoehe);

//der Kopf
g.setColor(hautFarbe);
g.fillOval(ortX-groesse/2, ortY-groesse/2, groesse, groesse);

//die Nase
g.setColor(Color.black);
int part=groesse/8;
g.drawLine(ortX, ortY-part, ortX, ortY+2*part);

//der Mund
part=2*groesse/3;
g.drawArc(ortX-part/2, ortY-part/2, part, part, -125, 80);

//die Augen
g.setColor(augenFarbe);
part=groesse/8;
g.fillOval((int)(ortX-3*part), ortY-2*part, 2*part,part);
g.fillOval((int)(ortX+1*part), ortY-2*part, 2*part,part);
}
}


}



Da hast mal was größeres :p
also alles was hinter // geschrieben ist sind Kommentare die fürs kompilieren völlig irrelevant sind. Und die /* xxx */ auch. Die werden beim Kompilieren ignoriert. Sind also nur Kommentare für einen selber. Dann sind da noch einige Befehle bei die ich nich kenne. Aber ohne deine Kommentare dazwischne wäre es nicht sooooo groß :p :) Hah, ich hab schon bissel was gelernt :p also Kommentare könnte ich in jeden Quellcode einfügen ^^ :D
Aber mal so grob geschätzt. Das ist was buntes ^^ und man sieht Kobolde :p


:hy:



/€ und die Klammerpaare sind da, um die Prog Abschnitte zu strukturieren :D
 
Jo das ist ein fenster wo du Kobolde anzeigen lassen kannst und per Klick wieder verschwinden lassen kannst ;)

// die Kommentare brauchst du^^ ohne die verstehst du nach ein paar Programmen nicht mehr, was du früher gemacht hast :p
 
TenthManDown schrieb:
Jo das ist ein fenster wo du Kobolde anzeigen lassen kannst und per Klick wieder verschwinden lassen kannst ;)

// die Kommentare brauchst du^^ ohne die verstehst du nach ein paar Programmen nicht mehr, was du früher gemacht hast :p
muss ich mal morgen oder so ausprobieren ^^
 
TenthManDown schrieb:
Du kommst nun erstmal On :p

PN lesen !
ausnahme :p normal mach ich kiene live Modtrades :p
Und das zauberwort heisst "bitte" :p :D


:hy:
 
7 Kilobyte Text quoten saugt :p

/me legt noch ein paar

ldlo r2 0h1C
ldhi r2 0h00
ldd r3 [r2]
sub r2, r2, r1
sub r2, r2, r1
add r3, r3, r1
ldd r4, [r2]
add r3, r3, r4
sto [r2], r3

dazu.

Wahlweise auch direkt in Maschinencode:
0100.0010.0001.1100
0100.1010.0000.0000
0101.1011.0001.0000
0011.0010.0001.0001
0011.0010.0001.0001
0011.1011.0001.1001
0101.1100.0001.0000
0011.1011.0001.1100
0101.0000.0001.0011


Technische Informatik ist schon was lustiges :D
 
als nichteingeweiter muss man das nicht verstehen oder? :D
naja jedenfalls geh ich nu pennen, nacht...

muss morgen wieder zeitig raus und lernen (bzw Nachhilfelehrer spielen :D)

btw, ab morgen Sturmfreie Bude für den rest der Woche :cool:
mum muss ins Krankenhaus, Schilddrüße rausnehmen lassen...
 
Wieso zeihst du die Register von einander ab :confused:
Steht doch gar nix drin :p

Bzw was für Assembler ist dat ?


Und das zauberwort heisst "bitte"
Bitte und Vielen Dank :)

Konnte doch nicht schon wieder mfb nerven ^^ Pat hat ein schlechtes Gewissen.
 
TenthManDown schrieb:
Wieso zeihst du die Register von einander ab :confused:
Steht doch gar nix drin :p
>> ldlo r2 0h1C (untere 8 Bits laden)
>> ldhi r2 0h00 (obere 8 Bits laden)
>> ldd r3 [r2] (Daten unter Adresse 28 laden)
r0 ist hier fest 0h00, r1 fest 0h01

>> Bzw was für Assembler ist dat ?
Das wäre für einen 16Bit-Prozessor, den wir aktuell so langsam zusammensetzen.
Register, ALU und program counter bauen gabs schon als Übungsaufgaben.
 
Ohje wir sind da noch Hardware näher in den fach wo ich das hab.

Wir arbeiten da mit einem Atmel S898552 Mircocontroller. Wenn wir das in C programmieren ist der zu schnell voll ^^ also der Speicher,

;Register 0 ist die gemessene Temperatur
;Register 1 ist die Soll temperatur


Der Programm Code sieht dann so aus:
Code:
;Unterprogramme von AD wandler einbinden. ADDAhilf.a51 
;Unterprogramme von LCD Anzeige einbinden. LCD8252.a51     





include reg_51.pdf
code at 0

extern code Ain0, Aout
EXTERN CODE initLCD,loeschzeile1,loeschzeile2,textzeile1,textzeile2,cursorpos
EXTERN CODE textaus,zifferaus,hexaus,dezaus


mov R0,#00h
mov R1,#00h

sjmp	init



;******** Interrupt-Service-Routine *****************************************************************************


				org 0003h   						;Interrupt-Einsprungadresse
extInt0:	           inc R1	   ; Bei Drücken des Tasters Interrupt um 1 hochzählen					
				call TempausgebenR1
				call Tempvergl
				reti										;Rückkehr aus dem Interrupt


				org 0013h
extInt1:			dnc R1							; Bei Drücken des Tasters Interrupt um 1 runterzählen					
				
				call TempausgebenR1		
				call Tempvergl						; vergleichen und Peltier an/ausschalten
				reti					




;********* Initialisierung ***********************************************************************

init:	


		setb 	IT0							;ext. Interrupt0 bei abfallender Flanke
		setb 	EX0							;ext. Interrupt0 freigeben


		setb 	IT1						;ext. Interrupt1 bei abfallender Flanke
		setb 	EX1						;ext. Interrupt1 freigeben
		setb 	EA							;globale Interruptfreigabe

haupt:          
		call Tempauslesen
		call warten
		call TempausgebenR0            
		sjmp haupt								; warten auf die Interrupts





Tempauslesen:
		lcall Ain0 					         ;Wert vom Analogeingang 0 holen
		RR A										; Akku (Eingelesener Wert ) 2* nach Rechts verschieben
		mov R0,A									; Wert in Register 0 schreiben
		ret



TempausgebenR1:
  
lcall initLCD 					 ; Initalisierung LCD
lcall loeschen					 ;Gesamtes Display löschen
mov A,R1
lcall dezaus
ret


TempausgebenR0:  

lcall initLCD       			  ; Initalisierung LCD
lcall loeschen    			  ; Gesamtes Display löschen
mov A,R0
lcall dezaus
ret
ret



Tempvergl:		clr c
			mov A,R0    ;R0 - R1 => Ergebnis steht dann im Akku , wenn das Carrry Bit wird gesetzt, wenn R1 < Akku also wenn im Akku eine negative Zahl steht
			SUBB A,R1
			jc Peltan
			jmp Peltaus


Peltan:
			Px,#0FFh

peltaus:
			Px,#00h




warten:	

			mov  r3, #0ffh 				 ; 255d, 11111111b,   außerer Schleifenzähler mit 255 laden
Sp2:
			mov  r4, #200d  				 ; Schreibe in das Register die zahl 100 also mit 100 laden
sp3:	
			DJNZ r4, Sp3	 				 ; Zähle register 3 runter  innere Schleife -1, wenn nicht 0 springe zu sp3
			DJNZ r3, Sp2    				 ; selbe wie oben nur mit reg 2
			ret
 
bisl werbung mach :p

sooo kommt schon wir brauchen ein paar für die erste runde :go:

btw hi at all here xD
 
Zurück
Oben