Nerds, Programmierer, Jscripter

DeletedUser2856

Gast
Dieses Programm kenne ich nicht. Bin aber grad inner Schule in der Java Lektion (Wenn man das mal so nennen kann...)
 

DeletedUser8612

Gast
Ich sitze jeweils montags in der Java Lektion.
Lehrer Fragen Erlaubt:giggle:.
Aber gross freiwillig Coden Mit java mach ich nicht.
 

DeletedUser3671

Gast
Naja ich hatte letztes Jahr das Thema mysql php html und so ein kram
und jetzt mache ich mein Abi ( Matura ) und habe das glück mich mit Java auseinander zu setzen:giggle:
 

DeletedUser

Gast
:redface::redface::icon_neutral::cool::frown:
sigDs800breit.gif
 

DeletedUser8612

Gast
wow, gut gemacht, wilst einen kekes?
Hab ich selber gemacht, genau wie das hier:
Operavsffieundsafari.gif

`````````````````````````````````````````````````````````````````\/
 

phillip1405

Ehemaliger Community Manager
Community Management
Reaktionspunktzahl
72
So, mal schauen wie fit ihr mit Logikgattern und Algorithmen seid :wink:

Hab heute morgen mal nebenher kurz meinen Stift (Lehrling) eine möglichkeit gezeigt wie er bei Tic-Tac-Toe die Siegesbedinnung überprüfen kann:

Siegerbereich:

Code:
Dim la_siegerarray() As Integer = {7, 56, 73, 84, 146, 273, 292, 448}

Punkte = aktuelle Summe aller ausgewählten Felder (Siehe unten)

Code:
    ''' <summary>
    ''' Prüft ob ein Spieler gewonnen hat
    ''' </summary>
    ''' <param name="Punkte">Aktuelle Bit-Punkte des Spieler X</param>
    ''' <returns>Boolean(status:0/1)</returns>
    ''' <remarks></remarks>
Private Function checkwinner(ByVal pPunkte As Integer)
        checkwinner = False
        For Each ls_item In la_siegerarray
            If (("&H" & Convert.ToString(pPunkte , 2) And "&H" & Convert.ToString(ls_item, 2)) = "&H" & Convert.ToString(ls_item, 2)) Then
                MsgBox("Spieler " & ls_player & " gewinnt")
                checkwinner = True
            End If
        Next
    End Function

Bei dem Tic-Tac-Toe feld hinterlege ich für jedes Feld (Schwarz) einen Wert! (Die Wahl der Werte sollte selbsterklärend sein)

Raster des Tic-Tac-Toe:

-------001-----002-----004-----007
-------008-----016-----032-----056
-------064-----128-----256-----448
84-----073-----146-----292-----273

Hierbei gäbe es 8 mögliche Siegerkonditionen (Rot) Funktioniert - ist auch Tiptop so, warscheinlich aber auch weil es nur 8 Siegesmöglichkeiten gibt.

4 gewinnt -> Feld von X*X.... Hier gibt es bereits extrem viele möglichkeiten! Die Performance ist also miserabel!
Hierfür hab ich nun einfach den MinMax-Algorithmus in einer Class und arbeite die möglichkeiten mittels einer Baumdiagrammclass ab! So kann ich die Performance auch deutlich verbessern da ich schon diverse Faktoren ausschliessen kann.

Ich frag mich nun aber schon die ganze Zeit ob es vielleicht auch noch andere (bessere) möglichkeiten ohne Min-Max Algo, ohne Baumdiagramm und ohne der Bitvergleichsweise gibt.

Vorschläge?
 

DeletedUser8612

Gast
Ja:
Import Java.Threading.*;

und danach machst beim Baumdiagramm in der ersten Runde neue Treads und danahc normal weiterfahren, kein Performancegewinn, aber je nach system schnell mal 3-4 mal schneller.

frage, mit diesen Zahlen, wenn du bei den feldern bei blau 1 abzug und bei rot 1 dazu, dann must du weniger überprüfungen machen, dafür aber etwas rechnen, aber ich denke mal die überprüfung dauert länger als das rechenen.

Das wissen um welche Programiersprache es sich handelt ist auch nicht zu verachten.

aber wenn du es mit Java schneller machen möchtest: nim C,C#,C++, geschwindigkeit so mal 10 bis mal 20.
 

DeletedUser8688

Gast
"Wir brauchen keine Spamer, dafür haben wir unsere Programme/Scripte."
wie ist dads gemeint??
 

DeletedUser8612

Gast
Na schon mal ein Programm gesehen das sinnvolle Beiträge liefert?

die Scripte könnn spamen, dazu können sie auch captcha etc austricksen um werbung und ähnliches zu verbreiten.

wieso sollten wir da noch spamen?

du schreibst ein Programm das dir in jeden Tread nen Link zu einem Onlinegame schreibt, dann ist das Spam. Und etwas anderes machen diese Scripte ja auch nicht.
 

DeletedUser

Gast
Endlich mal ein Thread den ich durchlesen kann, und nur bahnhof verstehe:icool::icool:
 

DeletedUser8688

Gast
Na schon mal ein Programm gesehen das sinnvolle Beiträge liefert?

die Scripte könnn spamen, dazu können sie auch captcha etc austricksen um werbung und ähnliches zu verbreiten.

wieso sollten wir da noch spamen?

du schreibst ein Programm das dir in jeden Tread nen Link zu einem Onlinegame schreibt, dann ist das Spam. Und etwas anderes machen diese Scripte ja auch nicht.
cool das brauch ich:biggrin:


Endlich mal ein Thread den ich durchlesen kann, und nur bahnhof verstehe:icool::icool:
word, lies vll mal das Frageforum durch ;DD
 

phillip1405

Ehemaliger Community Manager
Community Management
Reaktionspunktzahl
72
Ja:
Import Java.Threading.*;

und danach machst beim Baumdiagramm in der ersten Runde neue Treads und danahc normal weiterfahren, kein Performancegewinn, aber je nach system schnell mal 3-4 mal schneller.

frage, mit diesen Zahlen, wenn du bei den feldern bei blau 1 abzug und bei rot 1 dazu, dann must du weniger überprüfungen machen, dafür aber etwas rechnen, aber ich denke mal die überprüfung dauert länger als das rechenen.

Das wissen um welche Programiersprache es sich handelt ist auch nicht zu verachten.

aber wenn du es mit Java schneller machen möchtest: nim C,C#,C++, geschwindigkeit so mal 10 bis mal 20.

Du liest meine Beiträge aber schon, oder?

Minmaxalgo und Ausschlussverfahren via Baumverfahren habe ich ja bereits Implementiert, hab aber auch geschrieben dass ich überlege ob es noch andere Methoden gibt. Nicht gerade Sinvoll wenn du mir jetzt das Baumverfahren und den Min-Maxalgo anrätst....(Wieso nicht Sinvoll? Ich versuche eine andere möglichkeit als das Baumverfahren zu finden - beziehungsweise eine Idee....Steht aber auch oben)

Ausserdem ist Multithreading so ziemlich Grundlage für beide Varianten. Denke also kaum das es reicht einfach mal Threading in den raum zu werfen

Hierfür hab ich nun einfach den MinMax-Algorithmus in einer Class und arbeite die möglichkeiten mittels einer Baumdiagrammclass ab! So kann ich die Performance auch deutlich verbessern da ich schon diverse Faktoren ausschliessen kann.

Ich frag mich nun aber schon die ganze Zeit ob es vielleicht auch noch andere (bessere) möglichkeiten ohne Min-Max Algo, ohne Baumdiagramm und ohne der Bitvergleichsweise gibt.

Vorschläge?

Das wissen um welche Programiersprache es sich handelt ist auch nicht zu verachten.

Das spielt für eine Theoretische Frage genau keine Rolle.....Ob ich es nun in C,C#,VB.NET,Phyton oder was auch immer schreibe, die Grundfrage bleibt gleich.

Java ist Müll
 
Zuletzt bearbeitet:

DeletedUser8612

Gast
Also das mit dem Multithreading war ja auch als Witz gemeint, es macht es zwar schneller aber sonst nicht das was du wolltest.
das mit dem +1 und -1 ist jedoch nicht der MinMax algo den ich gemeint habe.
Sondern, dort wo rot einen Stein hat ist der wert 11, da wo blau gelegt hat nur 9 und da wo frei ist ist der wert 10. ddamit lässt sich das ganze verkürtzt programmieren, mit mehr schlaufen und so.
Ausserdem sind Zahlen beim Rechnen und vergleichen schneller als Strings.
Ausserdem kannst du in der gleichen Berechnung noch überprüfen ob der wert nicht um 3 von 30 (3*10) sondern nur um 2 abweicht, je nachdem wer dran ist, kannst du dann sagen das es entweder einen 1 runden Sieg gibt, oder das man genua dort reinlegen muss, ausserdem kann man bei 2 verschiedenen feldern für den gleichen spieler auch von einem Sieg für ihn ausgehen, noch ganz ohne baum, in nur 1Berechnungsrunde.

Ich hoffe ich konnte es einigermassen erklären.

Das ist NICHT der MINMAX algorithmus, entweder gewinn oder nicht, aber noch keine Tiefenstruktur.

weiss ich
 

DeletedUser745

Gast
*threadausgrab*

Kennt sich jemand mit lejos aus?
Ich bring das auf dem Win7 nicht im Netbeans zum laufen :frown:
 

DeletedUser8612

Gast
Das kann gut sein, ging es denn mit einer Früheren Windowsversion oder/Und einer früherern Net Beans Version, ich denke mal das es da viele Spezifische Java Befehle gibt.

Versuch mal das Problem genauer zu beschreiben, findet Netbeans die Vorgefertigten Klassern nicht oder sowas?
 

DeletedUser745

Gast
jo, netbeans will die libs nicht akzeptieren :frown:

auf xp geht alles, vista x64 ging es mit viel mühe und auf dem win 7 x64 hab ich keine chance
 

DeletedUser8612

Gast
lad dir mal ne alte version von netbeans, vermutlich liegt es daran, denn eigentlich sollte es bei Java ja nicht am Os liegen.
 

DeletedUser745

Gast
auf m xp hatte ich auch nb 6.9...

aber ich werde es mal versuchen
 
Oben