| |
|
|
- page 1 - |
|
Julian Schmidt |
|
|
| |
|
|
| |
|
- page 3 - |
|
|
Julian Schmidt | Jörg Sellmeyer (05.04.12)
comment würdest du cela Mischen spektakulärer faire. là brauchst Du simple seulement dreimal hintereinander pour dem Mischen qui Einzelbilder Montrer et déjà sieht es comment Mischen aus.
Du meinst le moi es dreimal mischen et Montrer soll. et cela dritte la fois ist cela final Ergebnis!?
Jörg Sellmeyer (05.04.12)
Pourquoi. si on es selbst löst, bekommt on ihn aussi pas angezeigt. tout autor ca va oui - es pourrait une Belohnung son, si on es geschafft hat. et naturellement kennt on cela Bild ou bien peux es sich Montrer laisser mais qui Witz ist oui, dass on es sich erarbeiten soll.
je pourrait aussi Montrer comment viele Züge on gebraucht hat. si on sur lösen klickt hat on 0 Züge gebraucht. si on es selber löst braucht on plus que 0 Züge.
Jörg Sellmeyer (05.04.12)
cela Auflösen serait je aussi volontiers Animieren. Allerdings sais je pas comment je ansätzen soll. cela sais je malheureusement aussi pas. sur Wikipedia gibt's allgemeine Infos et une Verweis trop einem selbst auflösenden Java-Puzzle: [...] Google findet bestimmt Lösungswege...
Werde je mir demain la fois angucken. Vlt nützt es mir quelque chose.
Jörg Sellmeyer (05.04.12)
la hâte Du car mittlerweile herausgefunden, quoi den faute im compilé Programme auslöst?
malheureusement non. j'ai aucun concept woran es liegen pourrait. Vlt pourrait la fois quelqu'un ici aus dem Forum den Voir le texte source sur mögliche Gründe untersuchen.
Jörg Sellmeyer (05.04.12)
Achso: cela Leerfeld sollte encore une (peut-être rote) Umrandung avons. si on un Bild avec viel noir hat, ist es mühsam pour trouver.
Würde Je ne si bien plaisons. Es serait cela komplette Design verschandeln |
|
|
| |
|
|
|
Jörg Sellmeyer |
Du meinst le moi es dreimal mischen et Montrer soll. et cela dritte la fois ist cela final Ergebnis!?
oui c'est ca
Werde je mir demain la fois angucken. Vlt nützt es mir quelque chose.
je glaub c'est pas simple. peut-être peux Frank Dir là Unterstützung zukommen laisser. qui hat la fois 'ne Dll geschrieben, qui "Wege findet".
Es serait cela komplette Design verschandeln
Stimmt déjà - mais: forme follows function; si Dir cela quoi sagt. Es reicht, si Du es, z.B. chez Drücken qui Strg-bouton, kurz aufblinken peut.
Vlt pourrait la fois quelqu'un ici aus dem Forum den Voir le texte source sur mögliche Gründe untersuchen.
je schätze, solange Du den Code pas quelque chose aufräumst, wirst Du Dir là wenig espoir faire peut... |
|
|
| Windows XP SP2 XProfan X4... und hier mal was ganz anderes als Profan ... | 06.04.2012 ▲ |
|
|
|
|
Julian Schmidt | Jörg Sellmeyer (06.04.12)
Du meinst le moi es dreimal mischen et Montrer soll. et cela dritte la fois ist cela final Ergebnis!? oui c'est ca
Ok, habe je eh bien incorporé.
Jörg Sellmeyer (06.04.12)
Werde je mir demain la fois angucken. Vlt nützt es mir quelque chose. je glaub c'est pas simple. peut-être peux Frank Dir là Unterstützung zukommen laisser. qui hat la fois 'ne Dll geschrieben, qui "Wege findet".
Hab je mir justement durchgelesen. sur qui Wikipedia-page steht pas comment on une Lösungsweg berechnen peux. seulement comment on ermitteln peux si un Puzzle une Solution besitzt ou bien pas. c'est allerdings aussi seulement sur un 15-Teile Puzzle beschränkt. chez mir gibts Puzzle avec qui Taille de 9, 15, 25, 36,49 et plus partager. Mir serait un Lösungsansatz déjà reichen. j'ai keinen blassen Schimmer comment on cela effectif lösen pourrait. qui einzige (uneffektive) Solution qui mir einfiele wäre simple avec Zufall zuarbeiten. Würde naturellement Ewigkeiten dauern...
Jörg Sellmeyer (06.04.12)
Es serait cela komplette Design verschandeln Stimmt déjà - mais: forme follows function; si Dir cela quoi sagt. Es reicht, si Du es, z.B. chez Drücken qui Strg-bouton, kurz aufblinken peut.
hmmmmm....je steh justement un bisschen sur dem malain comment meinst du cela?
Jörg Sellmeyer (06.04.12)
Vlt pourrait la fois quelqu'un ici aus dem Forum den Voir le texte source sur mögliche Gründe untersuchen. je schätze, solange Du den Code pas quelque chose aufräumst, wirst Du Dir là wenig espoir faire peut...
quoi meinst du avec aufräumen? Ist il den pas aufgeräumt? |
|
|
| |
|
|
|
Jörg Sellmeyer |
je hab's oui déjà geschrieben: Ähnliche Abläufe dans Prozeduren saisir, qui entsprechende paramètre aufnehmen peut. Aussi: selbsterklärende Variablennamen, une Formatierung, qui augenfreundlicher ist, en tout plus avec Prozeduren travailler, avec cela qui Code besser strukturiert ist...
hmmmmm....je steh justement un bisschen sur dem malain comment meinst du cela?
si on qui Strg-bouton drück, soll kurz un cadre um cela Leerfeld aufblinken.
c'est allerdings aussi seulement sur un 15-Teile Puzzle beschränkt.
qui Kontrolle funktioniert avec einer beliebigen Anzahl de partager. Comme je le disais: zum Lösungsweg sais je aussi rien. je hab là aussi encore rien trouvé (,quoi je comprends ). |
|
|
| Windows XP SP2 XProfan X4... und hier mal was ganz anderes als Profan ... | 06.04.2012 ▲ |
|
|
|
|
| @Julian:
c'est eigentlich entier simple seulement lösbare Puzzel trop mischen indem Du juste seulement so
rame-um-rame mischst aussi zurückgespielt volonté pourrait.
Incidemment weist Du ensuite aussi avec comment vielen Zügen cela Spiel sur jeden le cas trop lösen ist
et peux Montrer: encore N Züge... ou bien quelque chose comme comment: "Juhu, tu as une encore
kürzeren Lösungsweg trouvé comme qui Mischweg Züge mischte!".
cet ganzen Grafikfehler serait je avec cela beheben indem cela Bild schlicht im grenier
(MCLS) erzeugt wird et seulement toujours chaque neue Frame sur cela hWnd kopiert.
So peux Du aussi cela la fenêtre größenskalierbar ermöglichen et mCopySizedBmp
toujours sur qui gesamte Fenstergröße ausgeben. |
|
|
| |
|
|
|
Jörg Sellmeyer |
c'est eigentlich entier simple seulement lösbare Puzzel trop mischen indem Du juste seulement so rame-um-rame mischst aussi zurückgespielt volonté pourrait.
cela wäre aussi mon prochaine Vorschlag gewesen. cela nützt allerdings rien, si qui Spieler sich selber dans un autre Situation gebracht hat. maintenant pourrait on zwar alle Züge mitprotokollieren et ensuite qui Solution abrufen. cela wäre mais quelque chose paralysé. und dir oui um une Lösungsweg aus chacun Situation. |
|
|
| Windows XP SP2 XProfan X4... und hier mal was ganz anderes als Profan ... | 06.04.2012 ▲ |
|
|
|
|
Jörg Sellmeyer | je hab la fois quasi cela Gegenteil programmiert:
Proc QuadratKoordinaten
Paramètres a%,b%' ce sont qui virtuellen Koordinaten qui Quadrate (alors 1,1 ou bien 0,2)
Déclarer Wert$
Si Between(%mousex,a% * Breite%,(a% + 1) * Breite%, %mousey, b% * Hoehe%, (b% + 1) * Hoehe%)
'ici volonté qui tatsächlichen X/Y-Koordinaten ermittelt
Wert$ = Str$(%mousex \ Breite% * Breite%) + " " + Str$(%mousey \ Hoehe% * Hoehe%)
EndIf
Retour Wert$
ENDPROC
Proc MouseAbfrage
WhileLoop 0,Anzahl%-1
WhileLoop 0,Anzahl%-1
Test$ = QuadratKoordinaten(&Boucle,l%)
Si Test$ > " "
x% = Val($ Substr(Test$,1," "))
y% = Val($ Substr(Test$,2," "))
Pause
EndIf
Test$ = " "
Wend
Cas Test$ > " ":Pause
Inc l%
Wend
Claire l%
'Titre de la fenêtre Test$ ' zur Kontrolle volonté qui X/Y-Koordinaten dans qui Titelleiste gezeigt
ENDPROC
Proc Bewegen
Paramètres x1%,y1%
'dedans des Fensters rester
Si ((x1% > -1) And (y1% > -1)) And (((x1% + Breite%) <= Width(%hwnd)) And ((y1% + Hoehe%) <= Height(%hwnd)))
SetWindowPos hAnzeige&,x1%,y1%
x% = x1%
y% = y1%
x_alt% = x1%
y_alt% = y1%
EndIf
ENDPROC
Randomiser
Fenêtre Style 2 | 8 | 16' | 512
Fenêtre 100,100 - 806,600 + %cyCaption + 6' la fenêtre peux on aussi beliebig einstellen
Déclarer l%,Test$,x%,y%,x_alt%,y_alt%,Breite%,Hoehe%,Anzahl%
Déclarer i1%,i2%
Anzahl% = 4' ici peux on le nombre qui Felder einstellen. Anzahl% = 4 ergibt 16 Felder
Breite% = (Width(%hwnd) / Anzahl%,0)
Hoehe% = (Height(%hwnd) / Anzahl%,0)
SetWindowPos %hwnd = %winleft,%wintop - (Anzahl% * Breite% + 6),(Anzahl% * Hoehe% + %cyCaption + 6)' Rundungsfehler ausgleichen
x_alt% = Tour(Anzahl%) * Breite%
y_alt% = Tour(Anzahl%) * Hoehe%
Var hPic& = Créer("hNewPic",Breite%,Hoehe%,$0F00FF)
Var hAnzeige& = Créer("Bitmap",%hwnd,hPic&,x_alt%,y_alt%)
Tandis que 1
WaitInput
Localiser 1,1
Cas %Mousepressed = 1:MouseAbfrage()
Si %clé = 2
Pause
ElseIf Test$ > " "
i1% = Abs(x_alt% - x%)' <= 100
i2% = Abs(y_alt% - y%)' <= 100
Si ((i1% + i2%) = Breite%) | ((i1% + i2%) = Hoehe%)
SetWindowPos hAnzeige&,x%,y%
x_alt% = x%
y_alt% = y%
EndIf
Test$ = " "
ElseIf IsKey(37)
Bewegen(x_alt% - Breite%,y_alt%)
ElseIf IsKey(38)
Bewegen(x_alt%,y_alt% - Hoehe%)
ElseIf IsKey(39)
Bewegen(x_alt% + Breite%,y_alt%)
ElseIf IsKey(40)
Bewegen(x_alt%,y_alt% + Hoehe%)
EndIf
Wend
ici wird un Rechteck sur einer freien Surface bewegt. il faut im Prinzip seulement encore une Kollisionsabfrage einbauen. |
|
|
| Windows XP SP2 XProfan X4... und hier mal was ganz anderes als Profan ... | 06.04.2012 ▲ |
|
|
|
|
| si de vornherein un Lösungsweg pas ausgeschlossen ist ensuite sollte doch
une Solution toujours avec Durchrotieren trop ermitteln son. |
|
|
| |
|
|
|
Jörg Sellmeyer | cela wäre ensuite Brute Force. |
|
|
| Windows XP SP2 XProfan X4... und hier mal was ganz anderes als Profan ... | 06.04.2012 ▲ |
|
|
|
|
Julian Schmidt | Jörg Sellmeyer (06.04.12)
je hab's oui déjà geschrieben: Ähnliche Abläufe dans Prozeduren saisir, qui entsprechende paramètre aufnehmen peut. Aussi: selbsterklärende Variablennamen, une Formatierung, qui augenfreundlicher ist, en tout plus avec Prozeduren travailler, avec cela qui Code besser strukturiert ist...
hmmmm....viel travail, si on es im Nachhinein pouvoir. là sais on gar pas wohin on anfangen soll.
Jörg Sellmeyer (06.04.12)
si on qui Strg-bouton drück, soll kurz un cadre um cela Leerfeld aufblinken.
Erledigt.
iF (06.04.12)
si de vornherein un Lösungsweg pas ausgeschlossen ist ensuite sollte doch une Solution toujours avec Durchrotieren trop ermitteln son.
Vlt sollte je mich seulement daran faire seulement lösbare Puzzles trop erstellen. Sonst wäre un Algorithmus qui es löst pas toujours zweckdienlich. |
|
|
| |
|
|
|
Jörg Sellmeyer |
là sais on gar pas wohin on anfangen soll.
vois Du - et cela wolltest Du uns zumuten... exposition Dir la fois meinen Code à. là wirst Du sûrement quoi de gebrauchen peut.
Z.B. erstellst Du ici toujours wieder neue Bilder:
whileloop 1,part_x&,Si((part_x& Mod 2)=0,2,1)
space&=Créer("hNewPic", &loop, part_y&, Back_Color())
DrawPic space&, ((spalte_&-1)*part_x&), (zeile_&-1)*part_y&; 0
DrawPic pic_part&[i_&], ((spalte_&-1)*part_x&)+&loop, (zeile_&-1)*part_y&; 0
DeleteObject space&
Endwhile
si Du stattdessen un Bitmapcontrol erstellst, peux Du cela pour Belieben sur dem la fenêtre herumschieben. |
|
|
| Windows XP SP2 XProfan X4... und hier mal was ganz anderes als Profan ... | 06.04.2012 ▲ |
|
|
|
|
Julian Schmidt | Jörg Sellmeyer (06.04.12)
Z.B. erstellst Du ici toujours wieder neue Bilder:
whileloop 1,part_x&,Si((part_x& Mod 2)=0,2,1)
space&=Créer("hNewPic", &loop, part_y&, Back_Color())
DrawPic space&, ((spalte_&-1)*part_x&), (zeile_&-1)*part_y&; 0
DrawPic pic_part&, ((spalte_&-1)*part_x&)+&loop, (zeile_&-1)*part_y&; 0
DeleteObject space&
Endwhile
Eig. erstelle je pas toujours neue Bild. je male vous seulement sur cela la fenêtre. Per Créer("hNewPic",...) (siehe dessus) erstelle je seulement une schwarzen Streifen. Statt dessen pourrait je aussi den Befehl Line ou bien Rectangle gebrauchen. Nachtrag: par Rectangle ersetzt!
Jörg Sellmeyer (06.04.12)
si Du stattdessen un Bitmapcontrol erstellst, peux Du cela pour Belieben sur dem la fenêtre herumschieben.
je vois den Vorteil y pas. je bräuchte zusätzlich le Bildern encore jeweils un Bitmapcontrol. je hätte alors qui doppelte Anzahl à Controls. et Windows devrait plus grenier et CPU aufopfern!? |
|
|
| |
|
|