Seite 1 von 16

Wäre es nicht mal wieder an der Zeit...

Verfasst: 14.04.2012 16:30
von 7x7
...für ein kleines Pure-Golf?

:lurk:

Re: Wäre es nicht mal wieder an der Zeit...

Verfasst: 14.04.2012 16:43
von ts-soft
Nach 6 Jahren mal wieder?
Die Titelverteidigerin steht aber seit 5 Jahren nicht mehr zur Verfügung, hoffentlich hat Sie sich nicht
am Schnürsenkel verschluckt :lol:

Mit wem willste das durchziehen, bei dem was hier so los ist?

Beim letzten PureGolf warst Du hier doch noch gar nicht gemeldet.

Re: Wäre es nicht mal wieder an der Zeit...

Verfasst: 14.04.2012 23:11
von NicTheQuick
Auja. Wer legt einen Code vor? Wie wäre ein TicTacToe mit Computergegner und natürlich Cross-Plattform, sonst kann ich ja gar nicht mitmachen. Das heißt Winapi-Spielereien gelten nicht.

Re: Wäre es nicht mal wieder an der Zeit...

Verfasst: 14.04.2012 23:22
von STARGÅTE
Könnte ich ein paar Hintergrundinformationen bekommen?
Was ist Pure-Golf ? Wirklich n Golfspiel?

Re: Wäre es nicht mal wieder an der Zeit...

Verfasst: 15.04.2012 02:21
von Derren
http://www.forums.purebasic.com/german/ ... f=2&t=7449

Es geht darum ein vorgegebenes Programm in möglichst wenig Zeilen zu schreiben wenn ich das richtig sehe

Re: Wäre es nicht mal wieder an der Zeit...

Verfasst: 15.04.2012 04:07
von STARGÅTE
Aha, es gibt aber scheinbar andere Regel, oder sind solche Code-Kürzungen wie hier:
http://www.purebasic.fr/german/viewtopi ... 39#p256239
erlaubt?

Re: Wäre es nicht mal wieder an der Zeit...

Verfasst: 15.04.2012 08:47
von 7x7
Bei PureGolf geht es darum, einen vorgegebenen Code durch Umprogrammierung in so wenig wie mögliche
ZEICHEN zu pressen. Spaces usw. zählen alle mit. Es wäre also NICHT klug, mehrere Befehle in einer Zeile
mit ":" getrennt zu verarbeiten, da ja der Doppelpunkt mitzählt.

Jeder, der eine Änderung vornimmt, stellt seinen veränderten Code hier ins Forum. Andere dürfen diesen
Code übernehmen, widerum verändern und hier einstellen usw.

Der veränderte Code muss natürlich genauso funktionieren wie vorher. Alles ist erlaubt, ausser ausgelagerter
Code. Bei PureGolf nehme ich Abstand von Punkt 2 meiner Signatur :D

Derjenige, der zu einem vorher definierten Zeitpunkt den kleinsten Code abgegeben hat ist Sieger.

siehe hier: Puregolf

Re: Wäre es nicht mal wieder an der Zeit...

Verfasst: 15.04.2012 12:01
von ts-soft
Hab das Counterprogramm mal an PB4.x angepasst, jetzt werden UTF-8 und ASCII- Dateien auch gleich behandelt:

Code: Alles auswählen

EnableExplicit

OpenWindow(0, #PB_Ignore, #PB_Ignore, 200, 45, "Codezähler")
StringGadget(0, 0, 0, 140, 20, "")
ButtonGadget(1, 141, 0, 58, 20, "Browse")
ButtonGadget(2, 0, 22, 60, 20, "Count")
TextGadget(3, 65, 25, 200, 20, "Zeichen:")

Define.i eventid, count
Define.s file, line

Repeat
  eventid = WaitWindowEvent()
  If eventid = #PB_Event_Gadget
    If EventGadget() = 1
      file.s = OpenFileRequester("Open", "", "PB-Code *.pb | *.pb| Alles *.* | *.*", 0)
      SetGadgetText(0,file)
    ElseIf EventGadget() = 2
      count = 0
      If file
        OpenFile(0, file)
        ReadStringFormat(0)
        While Eof(0) = 0
          line = Trim(ReadString(0))
          If Mid(line, 1, 1) <> ";" : count + Len(line) : EndIf
        Wend
        SetGadgetText(3, "Zeichen: " + Str(count))     
        CloseFile(0)  
      EndIf
    EndIf
  EndIf
Until eventid = #PB_Event_CloseWindow 
Zu den Regeln würde ich Vorschlagen:
1. EnableExplicit in der ersten Zeile erforderlich, so bleibt es wenigstens etwas lesbar :mrgreen:
(DisableExplicit dann natürlich nicht erlaubt!)
2. Macros erlaubt.
3. Nur Funktionen erlaubt, die auf allen 3 OSes zur Verfügung stehen.
4. Compilerdirektiven sind nicht erlaubt, also auch keine externen Dateien.

Wenn Ihr damit einverstanden seit, fehlt nur der Startcode :wink:

Re: Wäre es nicht mal wieder an der Zeit...

Verfasst: 15.04.2012 12:08
von mirca
@7x7
Eine sehr gute Idee!
ts-soft hat geschrieben:Wenn Ihr damit einverstanden seit, fehlt nur der Startcode :wink:
:lol:
seit != seid :!:

Re: Wäre es nicht mal wieder an der Zeit...

Verfasst: 15.04.2012 12:23
von STARGÅTE
Nagut, normalerweise verbraucht ein Zeilenumbruch 2 Zeichen, daher war der : eigentlich günstiger.
Aber mit euerm Zeichenzähler ist das natürlich anders.
Im übrigen verstehe ich nicht, wieso ihr Leerzeichen vorne wegfiltert, aber innnen stehen last.
Wenn dann sollten nur sichtbare Zeichen zählen!
Im übrigen sollte dieser noch angepasst werden, damit er auch TABs ausfiltert (die man ja normalerweise als Einrückung verwendet), und das auch Kommentare auch "hinten" stehen können und auch weggefiltert werden.