+ Antworten
Seite 2 von 3 ErsteErste 123 LetzteLetzte
Ergebnis 21 bis 40 von 44

Kann hier jemand Java?

Eine Diskussion über Kann hier jemand Java? im Forum Hausaufgaben. Teil des Reallife-Bereichs; @black: Beschäftige dich mal mit blueJ. Ist ne super Sache, wenne - wie ich - Eclipse als klausurfeindlich ansiehst, aber ...

  1. #21
    Feldwebel
    Avatar von XXXNA
    Registriert seit
    08.08.2005
    Alter
    29
    Beiträge
    1.201
    @black: Beschäftige dich mal mit blueJ. Ist ne super Sache, wenne - wie ich - Eclipse als klausurfeindlich ansiehst, aber trotzdem die Objektorientierung visualisieren willst.

    http://www.bluej.org/download/download.html

    Wurde uns von unserem Prof. auch nahe gelegt und ich kann bisher sehr gut damit arbeiten.
    ]

  2. #22
    Zitat Zitat von Derksowitch Beitrag anzeigen
    @black: Beschäftige dich mal mit blueJ. Ist ne super Sache, wenne - wie ich - Eclipse als klausurfeindlich ansiehst, aber trotzdem die Objektorientierung visualisieren willst.

    http://www.bluej.org/download/download.html

    Wurde uns von unserem Prof. auch nahe gelegt und ich kann bisher sehr gut damit arbeiten.
    kk werd ich mal ausprobieren ...
    müsst ihr die Klausuren auch auf Papier schreiben?


    €dit: sieht auf jeden Fall schonmal gut aus ... auf jeden Fall besser als im Editor ^^ und Syntax highlighting is ja nix böses

  3. #23
    Feldwebel
    Avatar von XXXNA
    Registriert seit
    08.08.2005
    Alter
    29
    Beiträge
    1.201
    Hi Leute,

    neues "Problem":

    Wir sollen nun "Vier gewinnt" programmieren. Ich habe schon sehr viel geschafft, wie ich finde. Jetzt bin ich an der Stelle, dass ich mit einer Methode überprüfen will, ob wer gewonnen hat. Dazu hatte ich mir Folgendes überlegt:

    Zitat Zitat von java
    public boolean horizontal()
    {
    int y = 5;
    int x = 6;
    boolean vier_in_reihe = false;

    while(vier_in_reihe == false && y > 2)
    {
    if(spiel[y][x] == spiel[y-1][x] == spiel[y-2][x] == spiel[y-3][x])
    {
    vier_in_reihe = true;
    }
    if(vier_in_reihe == false)
    y = y-1;
    }
    if(vier_in_reihe == true)
    return true;
    }
    Das char-array "spiel" ist eine globale Variable der Klasse: private char[][] spiel = new char[6][7];

    NUn spuckt mir BlueJ den Fehler aus:

    "incomparable types: boolean and char für die Zeile if(spiel[y][x] == spiel[y-1][x] == spiel[y-2][x] == spiel[y-3][x])

    Ich denke, dass das dran liegt, dass Java zuerst die ersten beiden vergleicht, true oder false speichert, und anschließend mit dem dritten weitervergleicht.

    Wie kann ich es schaffen, dass er alle 4 vergleicht, ohne alle 4*3*2= 24 Möglichkeiten einzeln checken zu müssen?
    ]

  4. #24
    UF Supporter
    Avatar von BseBear
    Registriert seit
    27.09.2003
    Ort
    Stuttgart
    Alter
    31
    Beiträge
    3.945
    Name
    Michael
    Nick
    bsebear
    Hm gute Frage... Soweit ich weiß kannst du nur 2 Werte miteinander vergleichen und das Ergebnis davon eben mit & mit anderen Vergleichen verknüpfen.

    Zitat Zitat von Java Code
    if (spiel[y][x] == spiel[y-1][x]) && (spiel[y-1][x] == spiel[y-2][x]) && (spiel[y-2][x] == spiel[y-3][x])
    Das sollte eigentlich reichen oO. Die Bedingung ergibt nur true wenn alle Vergleiche wahr sind und bricht ab sobald ein Vergleich nicht wahr ergibt. Im ersten Schritt überprüfst ob y und y-1 gleich sind. Wenn ja, y-1 mit y-2 (d.h. es wird auch automatisch verglichen ob y=y-2 ist) usw.

    Probiers mal aus

  5. #25
    Ich wüsste jetzt ad hoc zwar nicht ob es noch eine bessere Lösung gibt, aber als Mathematiker würde ich eine Darstellungsmatrix definieren welche immer nur dann ein bestimmtes Element einer Summe Y ergibt, wenn man gerade 4 in einer Reihe hat.

    Man hätte also eine Matrix welche genau so groß ist wie das Spielfeld und welche für jeden Punkt einen bestimmten Wert definiert.
    Dann müsste man bei jedem Zug den Wert des zug. Spielers erhöhen und schauen ob das Ergebnis eine bestimmte Summe X hat.

    So würde die eigentliche Schwierigkeit darin liegen diese Matrix und die gesuchten Summen vor dem Spielstart allg. bestimmen zu können.
    Falls ihr hier aber von einer ganz bestimmten Spielgröße ausgeht müsste man es sogar nicht mal allg. bestimmen, sondern nur einmal auf dem Papier ausrechnen.

    Es würde dann auch sehr effizient laufen.

  6. #26
    Feldwebel
    Avatar von XXXNA
    Registriert seit
    08.08.2005
    Alter
    29
    Beiträge
    1.201
    Wir müssen das nur für ein spezielles Vier-Gewinnt machen.

    Zitat Zitat von java
    public class Viergewinnt2
    {
    private int gespielt1 = 1;
    private int gespielt2 = 1;

    private char[][] spiel = new char[6][7];





    public Viergewinnt2()
    {
    feld_erstellen();
    }

    public void feld_erstellen()
    {
    for(int i=0; i < 6; i++)
    {
    for(int n=0; n < 7; n++)
    {
    spiel[i][n] = ' ';
    }}}

    public boolean korrekt(int n)
    {
    if(n > -1 && n < 7)
    return true;
    else
    return false;
    }

    public void eingabe1(int zug_spieler1)
    {
    if(korrekt(zug_spieler1) == true && gespielt1 == 1)
    {
    int y = 5;
    boolean leer = false;
    while(leer == false && y > -1)
    {
    if(spiel[y][zug_spieler1] == ' ')
    {
    leer = true;
    }
    if(leer == false)
    y = y-1;
    }
    if(leer == true)
    {
    spiel[y][zug_spieler1] = 'X';
    gespielt1 = 0;
    gespielt2 = 1;
    ausgabe();
    if(horizontal(zug_spieler1) == true || waagerecht() == true)
    System.out.println("Spieler 1 hat gewonnen!!!");
    }
    }
    else
    {System.out.println("Ihre Eingabe ergibt keinen Sinn");}

    }
    public void eingabe2(int zug_spieler2)
    {
    if(korrekt(zug_spieler2) == true && gespielt2 == 1)
    {
    int y = 5;
    boolean leer = false;
    while(leer == false && y > -1)
    {
    if(spiel[y][zug_spieler2] == ' ')
    {
    leer = true;
    }
    if(leer == false)
    y = y-1;
    }
    if(leer == true)
    {
    spiel[y][zug_spieler2] = 'O';
    gespielt2 = 0;
    gespielt1 = 1;
    ausgabe();
    if(horizontal(zug_spieler2) == true || waagerecht() == true)
    {
    System.out.println("Spieler 2 hat gewonnen!!!");
    feld_erstellen();
    }
    }
    }
    else
    {System.out.println("Ihre Eingabe ergibt keinen Sinn");}
    }

    public void ausgabe()
    {
    System.out.println("\n");

    for(int n=0; n<7; n++)
    {
    System.out.print(" " + n);
    }
    System.out.print("\n");

    for(int x=0; x<6; x++)
    {
    System.out.print("|");

    for(int n=0; n<7; n++)
    {
    System.out.print(spiel[x][n] + "|");
    }
    System.out.print("\n");
    }

    }

    public boolean horizontal(int x)
    {
    int y = 5;
    boolean vier_in_reihe = false;



    while(vier_in_reihe == false && y > 2)
    {
    if(spiel[y][x] == spiel[y-1][x] && spiel[y-1][x] == spiel[y-2][x] && spiel[y-2][x] == spiel[y-3][x] && spiel[y][x] != ' ')
    {
    vier_in_reihe = true;
    }
    if(vier_in_reihe == false)
    y = y-1;

    }
    if(vier_in_reihe == true)
    return true;
    else
    return false;
    }

    public boolean waagerecht()
    {
    int x = 6;
    boolean vier_in_reihe = false;

    while(vier_in_reihe == false && x > 2)
    {
    for (int y = 5; y > -1; y--)
    {
    if(spiel[y][x] == spiel[y][x-1] && spiel[y][x-1] == spiel[y][x-2] && spiel[y][x-2] == spiel[y][x-3] && spiel[y][x] != ' ')
    {
    vier_in_reihe = true;
    }
    if(vier_in_reihe == false)
    x = x-1;
    }
    }
    if(vier_in_reihe == true)
    return true;
    else
    return false;
    }




    }

    Das ist mein bisheriger Code.
    Nun brauche ich noch 2 Methoden für die Diagonalen. Krieg ich aber hin


    Was natürlich noch schön wäre, wäre eine Benutzeeingabe in der Konsole.


    Ich stelle mir das so vor:


    "Spieler 1, es ist Ihr Zug": (hier soll dann eine Zahl zwischen 0 und 6 eingegeben werden)
    und dann soll der auf
    "Spieler 2, es ist Ihr Zug": (selbiges)
    springen und natürlich vorher wieder das neue Spielfeld ausgeben usw..

    Wie krieg ich denn das wohl hin? Hab im Netz nach Benutzereingaben gesucht, aber verstehe nur Bahnhof. Da steht was von BufferedReader usw., aber 0 Idee, wie man das benutzen soll, so dass es hier für auf mein "int zug_spielerX" übertragen werden kann.

    Weiß das auch noch einer von euch? Ich gehe schwer davon aus^^.


    Gelernt haben wir das alles noch nicht und Pflicht ist es auch nicht. Aber wäre praktisch (auch für mich zum Testen) und auf jedenfalls besser.
    Geändert von XXXNA (10.01.2009 um 18:49 Uhr)
    ]

  7. #27
    wildcat
    Avatar von huxl
    Registriert seit
    28.07.2001
    Ort
    Kirrlach
    Alter
    29
    Beiträge
    2.971
    Nick
    huxl
    wenn das ganze praktisch funktionieren soll, kommst an ner gui wohl nicht vorbei
    where is my mind?

  8. #28
    UF Supporter
    Avatar von BseBear
    Registriert seit
    27.09.2003
    Ort
    Stuttgart
    Alter
    31
    Beiträge
    3.945
    Name
    Michael
    Nick
    bsebear
    Ne Konsole als GUI reicht doch Er kann sich das Spielfeld ja auch auf der Konsole ausdrucken lassen Einfach in ner verschachtelten Schleife das Spiel-Array ausgeben. Kannst entweder auf einmal machen (In der Schleife die einzelnen Chars zu nem String verbinden und nach jeder Zeile ein \n hinzufügen und dann den String per System.out.println(String) ausgeben) oder Zeichen für Zeichen.

    BufferedReader buffer = new BufferedReader(new InputStreamReader(System.in));
    int i;
    i = Integer.parseInt(buffer.readLine());
    Den Integer musst dann halt noch auf seine Gültigkeit überprüfen aber sonst sollte es klappen. Das ganze läuft ja dann sicher in ner do while Schleife oder?

    Also
    do while (horizontal(zug_spieler2) != true && waagerecht() != true)
    In der Schleife lässt dann noch nen Counter mitlaufen, den du immer Mod 2 machst, um zu erkennen welcher Spieler gerade dran ist.

    Viel Erfolg

  9. #29
    Stabsfeldwebel
    Avatar von Wilma
    Registriert seit
    02.02.2007
    Ort
    Ruhrpott
    Alter
    37
    Beiträge
    4.058
    Name
    Michael
    Nick
    dp.Mordred
    Clans
    dp.
    wenn du zu streams wie bufferedreader unterlagen haben willst - pm an mich
    kann dir auch was zu guis schicken...
    www.die-philosoffen.com
    Wir zocken [ZH] [SC2] [EVE] [BF:BC2]
    Mindestalter: 21 Jahre

  10. #30
    Unteroffizier
    Avatar von Zorg
    Registriert seit
    30.10.2008
    Ort
    Nürnberg
    Alter
    32
    Beiträge
    669
    Nick
    dp.Zorg
    Clans
    die-philosoffen
    Zitat Zitat von Derksowitch Beitrag anzeigen
    Hallo Leute,

    ich bin so langsam echt am Verzweifeln. Ich studiere ja Wirtschaftsinformatik im ersten Semester und wir haben nun mit Java angefangen.
    Wirtschaftsinformatik . Ich hab das Problem gefunden. Allgemeine Informatik FTW.

    Und noch was Konstruktives: http://www.exampledepot.com/
    hier findet man Codesnippets zu nahezu allen Problemen in Java.

  11. #31
    Stabsfeldwebel
    Avatar von Wilma
    Registriert seit
    02.02.2007
    Ort
    Ruhrpott
    Alter
    37
    Beiträge
    4.058
    Name
    Michael
    Nick
    dp.Mordred
    Clans
    dp.
    bin mit mienem wiInf studium in den letzten zügen
    wenn man will, kann man da auch recht viel proggen - muss man aber ab ahuptstudium zum glück nicht mehr zwingend
    www.die-philosoffen.com
    Wir zocken [ZH] [SC2] [EVE] [BF:BC2]
    Mindestalter: 21 Jahre

  12. #32
    Unteroffizier
    Avatar von Zorg
    Registriert seit
    30.10.2008
    Ort
    Nürnberg
    Alter
    32
    Beiträge
    669
    Nick
    dp.Zorg
    Clans
    die-philosoffen
    Schreib grad meine Abschlussarbeit und mach dann den Master, das Proggen ist doch mit das Beste im Studium

  13. #33
    Feldwebel
    Avatar von XXXNA
    Registriert seit
    08.08.2005
    Alter
    29
    Beiträge
    1.201
    Das mit dem VierGewinnt hat nun sogar Spaß gemacht. Aber grundsätzlich find ich den Wirtschafts- und Matheteil viel viel besser. Das liegt mir eindeutig mehr.

    Achja, weil ich´s nun auch abgegeben hab: Wer mal ne Runde spielen möchte, im Anhang ist das Programm als Zip-Datei (main-Methode in der Run.Java)
    Angehängte Dateien Angehängte Dateien
    ]

  14. #34
    Stabsfeldwebel
    Avatar von Wilma
    Registriert seit
    02.02.2007
    Ort
    Ruhrpott
    Alter
    37
    Beiträge
    4.058
    Name
    Michael
    Nick
    dp.Mordred
    Clans
    dp.
    Zitat Zitat von Zorg Beitrag anzeigen
    Schreib grad meine Abschlussarbeit und mach dann den Master, das Proggen ist doch mit das Beste im Studium
    naja, customizing von erp-systemen kann auch spaß machen
    www.die-philosoffen.com
    Wir zocken [ZH] [SC2] [EVE] [BF:BC2]
    Mindestalter: 21 Jahre

  15. #35
    Unteroffizier
    Avatar von Zorg
    Registriert seit
    30.10.2008
    Ort
    Nürnberg
    Alter
    32
    Beiträge
    669
    Nick
    dp.Zorg
    Clans
    die-philosoffen
    Zitat Zitat von Wilma Beitrag anzeigen
    naja, customizing von erp-systemen kann auch spaß machen
    Perversling

  16. #36
    Kaum ein ehemaliger WiInf-Student arbeitet später mal in der Anwendungsentwicklung sondern eher in Consulting, Vertrieb oder Customizing. Das Studium ist ja auch als eine Art Schnittstelle - eher generalistisch und weniger speziell - zwischen den Welten Wirtschaft und Technik angelegt.

  17. #37
    Feldwebel
    Avatar von XXXNA
    Registriert seit
    08.08.2005
    Alter
    29
    Beiträge
    1.201
    Genau.

    Typische Jobs für Absolventen dieses Studiengangs sind im Consulting-Bereich, im Controlingbereich, in leitenden Positionen von Unternehmen (Unternehmen und/oder Stelle oft mit technisch/informatischem Bezug), sehr selten im Programmier- und Supportbereich anzusiedeln. Und natürlich steht einem fast die komplette BWL-Sparte offen.

    Daher sehe ich Programmierung auch eher als notwendiges Übel^^
    Geändert von XXXNA (14.01.2009 um 12:14 Uhr)
    ]

  18. #38
    Robin Hood
    Avatar von RaoulDuke
    Registriert seit
    10.12.2006
    Ort
    Monaco di Bavaria
    Alter
    34
    Beiträge
    3.778
    Nick
    MeinAnwalt
    Clans
    !BAMM!
    Jo aber das geht rum Hab mir damals auch von BseBärchen Hilfe geholt. Da ist das übel dann nimmer so groß^^
    Cause I'm a picker
    I'm a grinner
    I'm a lover
    And I'm a sinner
    I play my music in the sun

  19. #39
    Unteroffizier
    Avatar von Zorg
    Registriert seit
    30.10.2008
    Ort
    Nürnberg
    Alter
    32
    Beiträge
    669
    Nick
    dp.Zorg
    Clans
    die-philosoffen
    Leider erfüllen viele Winler die Funktion als Schnittstelle nur bedingt, da sie einfach zu wenig Ahnung von der technischen Seite haben, da kann ich dann gleich einen BWLer nehmen.

    Nunja ich bin halt einfach mehr von den technischen Fächern angetan und daher auch sehr glücklich mit meinem Studiengang. Außerdem werden auch häufig technische Informatiker in die Führungsebene geholt, es ist einfacher einem Techniker die Wirtschaftssachen zu zeigen als umgekehrt, zumindest hatte ich mit diesen Leuten mehr positive Erfahrungen.

    Aber deswegen gibt es ja verschiedene Studiengänge, damit für jeden nach seinen Vorlieben etwas dabei ist.

  20. #40
    Stabsfeldwebel
    Avatar von Wilma
    Registriert seit
    02.02.2007
    Ort
    Ruhrpott
    Alter
    37
    Beiträge
    4.058
    Name
    Michael
    Nick
    dp.Mordred
    Clans
    dp.
    @derksowitsch: konnteste mit den unterlagen was anfangen?
    @zorg: hm, kommt auf die branche an. etwas übertrieben gesagt kannste natürlich zb in nem softwarehaus als tech-inf wahrscheinlich bei den meisten arbeitsplätzen mehr reissen. aber was willste in diversen deinstleistungsunternehmen oder produzierenden läden damit reissen? da brauchste leute, die sich mit der it-infrastruktur einerseits und die dadurch abzubildenden bwl-prozesse andererseits befassen und sich damit auch einigermaßen auskennen. kleines beispiel (der kaufmännische leiter sagt zum wiInfler):
    kann man irgendwie realisieren, dass meine mitarbeiter grundsätzlich bei iheren buchungen nur bestimmte kostenstellen angeben dürfen? außerdem müsste das ein pflichtfeld bei der eingabe sein. ach ja, bei den kostenträgern hätte ich es gerne genauso. und warum hat mitarbeite A zugriff auf die fibu und ma B nicht?....
    oder umgekehrt: lieber chef, wir brauchen neue lizenzen von software x/y, weil wir durch den neuen standort und die neuen ma zuviele leute zeitgleich auf unseren virtuellen servern haben...
    Geändert von Wilma (15.01.2009 um 11:54 Uhr)
    www.die-philosoffen.com
    Wir zocken [ZH] [SC2] [EVE] [BF:BC2]
    Mindestalter: 21 Jahre

+ Antworten
Seite 2 von 3 ErsteErste 123 LetzteLetzte

Ähnliche Themen

  1. Antworten: 3
    Letzter Beitrag: 25.06.2011, 21:50
  2. Kann hier Jemand russisch?
    Von Thunderskull im Forum OFF-Topic
    Antworten: 9
    Letzter Beitrag: 02.12.2009, 22:56
  3. HILFE kann hier Jemand finnish?
    Von Thunderskull im Forum Reallife
    Antworten: 5
    Letzter Beitrag: 04.05.2009, 21:21
  4. Kann hier jemand spanisch
    Von Wilko im Forum Kuschelecke
    Antworten: 20
    Letzter Beitrag: 24.01.2009, 23:33

Berechtigungen

  • Neue Themen erstellen: Nein
  • Themen beantworten: Nein
  • Anhänge hochladen: Nein
  • Beiträge bearbeiten: Nein
  •