Seite 17 von 20 ErsteErste ... 71314151617181920 LetzteLetzte
Ergebnis 321 bis 340 von 385

Thema: IM IN YR LOOP\n VISIBLE FOO\n IM OUTTA YR LOOP - Der Programmierer-Spamthread #2

  1. #321
    Riecht stark nach Fibonacci.

    *schlägt die Formel nach*

    Yep, Fibonacci.

  2. #322
    Die wahrscheinlich kürzeste Variante, Fibonacci mit Caching zu implementieren. Ich bin aber gerne für Alternativen zu haben.

  3. #323
    Heyo. =)
    Ich sollte eigentlich für eine Klausur lernen (Compilerdesign, woohoo!) die morgen stattfindet, aber stattdessen schau ich Game of Thrones und habe lustige Ideen... ist ja klar.
    Eine solche lustige Idee ist, dass mir gerade die wohl schlechteste Methode in den Sinn kam, zu überprüfen, ob eine Nummer wohl eine ganze Zahl sei oder nicht; das ganze in Javascript, weil ich damit täglich zu tun habe, und man damit so herrlich viel Spaß haben kann:

    Code:
    isInt = function (x) {
        arr = [i = -999];
        for (; !arr[-1000];) {
            arr[i < 1001 ? i++ : -1000] = 1.0;
        }
        
        if (arr[x] == true) {
            return true;
        } else {
            return false;
        }
    }
    Die Funktion gibt true zurück, wenn man sie mit einer ganzen Zahl füttert (oder irgendwas, das ganzzahlig ausschaut, zum Beispiel auch für 4.0), und false ansonsten.
    Was ich daran toll finde ist, dass:
    • es nur von -1000 bis 1000 funktioniert - andere Zahlen sind sowieso unwichtig;
    • magic numbers genutzt werden, um genau -1000 bis 1000 zu erreichen (also -999 und 1001);
    • die lustigen Verhaltensweisen von Javascript, die man am besten vermeiden sollte, gnadenlos ausgenutzt werden (arrays mit negativem Index? Jupp... arrays mit floats adressieren? Jupp...);
    • die ternary-Kontrollstruktur um den for-loop zu verlassen sehr - und grundlos - unübersichtlich ist;
    • es vollkommen grundlos den == Operator verwendet, um floats mit booleans vergleichen zu können, nur um alles noch unübersichtlicher zu machen;
    • i und arr implizit global deklariert werden - dabei kann ja gar nichts schiefgehen!;
    • arr jedesmal, wenn die Funktion aufgerufen wird, neu angelegt wird (wenn schon global, dann sollte man das doch wenigstens... ach, was soll's);
    • am Ende eine unnötige if-Struktur steht, bloß um das Ergebnis des ifs auszugeben - das könnte man auch in einer Zeile haben


    Mir ist schon klar, dass man sicherlich noch viel mehr Idiotie in noch viel weniger Zeichen stecken kann, und daher meine Frage an euch alle:
    Was ist der schlimmste Code den ihr in ein paar kurzen Zeilen schreiben könnt? Nehmt ruhig die Programmiersprache eurer Wahl; ich bin gespannt, mit was für Unsinn man in den verschiedensten Sprachen so durchkommt. =)

    Geändert von Moyaccercchi (07.05.2014 um 15:47 Uhr)

  4. #324
    Das schönste was ich je mit C verzapft hatte war eine Rekursion ohne Rekursionsanker, Prozesse quasi-rekursiv zu forken und innerhalb einer Rekursion nach dem Allozieren von Speicher das Freigeben zu vergessen .
    Alles schöne Sachen die man erst zur Programmzeit merkt, weil die Speicher- und Prozessorauslastung recht schnell in die Höhe geht.

    Was ich auch immer wieder lustig finde, ist wenn man in C/C++ mit Pointern in Arrays rum stochert, statt über den Index zu zu greifen.

    Das schrägste was ich mal in einem Quellcode gesehen habe war folgendes:
    Code:
    ... (irgendein Code) ...
    if(1 == 1)
      return();
    ... (irgendein Code, der aber nie ausgeführt wird) ...
    Programmiersprache war da Java, einfach schlechter Programmierstil. Was man nicht braucht, sollte man auskommentieren oder gleich entfernen, sonst wird das Kompilat bei schlechten Compilern größer.

  5. #325
    Ich hab mir die Tage das Retro BASIC Sonderheft zugelegt. Ich bin zwar totaler ein programmier Analphabet, aber ich habe so eben mein erstes Listing in meinen MSX getippt^^
    Klicke auf die Grafik für eine größere Ansicht 

Name:	dsc_0218.jpg 
Hits:	36 
Größe:	127,0 KB 
ID:	20590
    Klicke auf die Grafik für eine größere Ansicht 

Name:	dsc_0219.jpg 
Hits:	18 
Größe:	121,0 KB 
ID:	20591
    Leider endete der 2. Screen in einer Fehlermeldung, was mich veranlasst hat meinen Code mit dem aus dem Heft und dem vom Ursprungsposting zu vergleichen. Und siehe da! Ich hab meinen ersten Code debuggt*g der Fehler lag darin, dass wo bei mir und im Heft
    Code:
    B:WITH32:
    steht,
    Code:
    B:WIDTH32:
    hätte stehen müssen.
    Jedenfalls bin ich neugierig wie das Ergebniss sein wird wenn ich korrigierte Fassung eingebe.
    Ziel des ganzen ist übrigens ein Spiel bei dem man am oberen Bildschirmrand seine Spielfigur nach links und rechts steuern kann und den von unten etgegenscrollenden Sternen ausweichen muss. Je länger man durchhält desto höher ist die Punktzahl und es ist möglich die Spielfeldbreite einzustellen.
    Für die Neugierigen, hier ist der Originalpost
    http://www.msx.org/forum/development...msx-basic-game
    Schon Schade, dass das alles vor meiner Zeit war. Ich hätt da bestimmt Spaß dran gehabt^^

  6. #326
    Das erinnert mich an die ganze Abtipperei auf dem C64
    Für Menschen jüngeren Alters: Früher veröffentlichen Programmier-Magazine ihre Programme per Quellcode in Papierform, die man dann abtippen musste.
    Es gab dann die Möglichkeit die Programme auf einer Diskette/Datasette zu bestellen. Später gab es dann zwei Ausführungen des Magazins. Entweder mit Diskette oder ohne. Die mit Diskette war dann deutlich teurer.

    Irgendwo müsste ich noch ein Buch für den C64 haben, mit Spielen zum Abtippen. ^^

  7. #327
    Wollte jetzt keinen extra Thread dazu aufmachen, aber ich habe diese Aufgabe hier gekriegt:

    Ich soll das hier nachbearbeiten, hab ich gemacht und war natürlich falsch. Ich habe sowas definiert:



    Bei interessen habe ich einfach einen String eingegeben den man auch in der Gruppe finden soll, damit es einfacher ist die Gruppe mit den meisten Spielern zu finden. Prof. Assisten schrieb mir:
    "Das Attribut "Interesse" in der Datenstruktur "Gruppe" abzufragen, ist der falsche Ansatz." Ja was wäre den der richtige Ansatz...?

  8. #328
    Das Attribut "Interessen" an der Gruppe ist ja kein Indikator dafür, ob es nun die Gruppe ist, mit den meisten Personen, die die Interesse "Spiele" haben.
    Das Attribut kann höchstens nur zur besseren Übersichtlichkeit dienen, welche Gruppen überhaupt welche Interessen besitzen, damit eine Person diese Gruppe auch findet.
    Man kann ja aber dennoch eine Gruppe erstellen, die die Interesse "Spiele" besitzt, aber keine Person in dieser Gruppe hat in seinem eigenen Profil "Spiele" als Interesse angegeben.
    Um nun herauszufinden, welche Gruppe die meisten Personen besitzt, die als Interesse "Spiele" besitzt, musst du nun durch die Liste der Mitglieder iterieren, und die Personen zählen, welche diese Interesse besitzt.

    Darüber hinaus ist das Attribut "anzMitglieder" redundant und fehleranfällig. Die Anzahl der Mitglieder ergibt sich schon aus der Liste der Mitglieder. "anzMitglieder" ist in dem Sinne Fehleranfällig, weil dieses Attribut jedes Mal aktualisiert werden muss, wenn eine Person sich aus der Gruppe ein- oder austrägt. Diese Implementierung vergisst man schnell im Eifer des Gefechts, oder man muss ein Datenbank-Korrektur-Script ausführen, das dies nicht beinhaltet, und schon hat man inkonsistente Daten.

    Das Attribut "Alter" würde ich auch gegen "Geburtsdatum" austauschen, da sich das Alter jedes Jahr ändert. Geburtsdatum hingegen nicht und daraus lässt sich ja bekanntermaßen das Alter berechnen
    Das Geburtsdatum ließe sich ja auch über die Unix Time als Integer abbilden. (Vorausgesetzt man ist nicht früher als 1.1.1970 geboren ^^)

    Geändert von Whiz-zarD (21.11.2014 um 08:52 Uhr)

  9. #329
    Microsoft hat auf der derzeit stattfindenden Build 2015 den Code-Editor Visual Studio Code, u.a. auch für Linux und OS X, vorgestellt. Damit wollen sie die Cross-Plattform-Entwicklung weiter vorantreiben. Dies ist aber ein reiner Editor und keine Entwicklungsumgebung mitsamt Compiler. Kompilieren müsste man dann schon selber (z.B. mit Mono wer C# unter Linux verwenden möchte). Da der Code-Editor aber nicht nur C# versteht, sondern mehrere Sprachen (darunter auch PHP, Python, JavaScript, HTML, CSS) könnte der Editor auch für Webentwicklung eingesetzt werden. Für JavaSript gibt es sogar eine IntelliSense-Unterstützung, und für ASP.NET 5- und Node.js Applikationen gibt es auch Debugging-Möglichkeiten.

  10. #330
    Hm. Einerseits hat VS einen guten Ruf, andererseits klingt "es ist wie VS, nur daß es keine IDE ist" etwas merkwürdig (und ich mag es, in einer IDE zu arbeiten) und Microsoft hat sich in den letzten Jahren einen Ruf für bizarre User Interfaces erarbeitet. Daß VS Code in den Screenshots ein wenig wie Sublime Text mit einer unbeschrifteten Iconleiste an der Seite aussieht, hilft da nicht.

    Könnte gut sein, vielleicht auch nicht. Ich denke, ich warte erst mal ein Jahr oder so und sehe dann, was die Leute sagen.

  11. #331
    Ich habs am Donnerstag mal ganz kurz ausprobiert. Das ist im Wesentlichen ein Atom Klon. Davon kann man jetzt halten, was man will.

  12. #332
    Auch ausprobiert, die Menüleiste von VS Code verträgt sich mit dem KDE(5)-Theme Breeze nicht und ist somit fast gar nicht lesbar (graue Schrift auf grauen Hintergrund).
    Ich habe es aber einen Augenblick später wieder deinstalliert.

  13. #333
    Ich bin mir nicht ganz sicher, ob folgendes hier was zu suchen hat. Ich probiers trotzdem:

    Zachtronics hat ein Programmier-Spiel namens TIS-100 (GoG-Link, Steam-Link, jeweils Windows- und Linux-Version) veröffentlicht, in welcher man mit einer Assembler-ähnlichen Programmiersprache Aufgaben erfüllen darf. Es fängt schon stilecht damit an, dass man sich ein ca. 14-seitiges PDF-Dokument, in der die Syntax erklärt wird, bestenfalls ausdrucken soll^^.

    Das Spielprinzip sieht ungefähr so aus, dass bestimmte Patterns von einem IN-Port kommen, diese der Aufgabenstellung gemäß bearbeitet und dann nach OUT-Ports weitergeleitet werden müssen. Mangels Assembler-Erfahrung kann ich nicht sagen, wie akkurat die Bearbeitung wirklich abläuft, aber soviel kann ich schon sagen: Das Spiel macht verdammt viel Spaß und lässt tatsächlich den Kopf rauchen. Ist IMHO wert, es mal gespielt zu haben, wenn man sich selbst mindestens Hobbyprogrammierer schimpft^^...

  14. #334
    Das ist megageil, sollte sich jeder jemals zulegen!

  15. #335
    Gekauft und direkt die ersten paar Levels gespielt. Gefällt.

  16. #336
    Hey, danke für den Tipp. Von der Spielbeschreibung alleine hätte ich nicht gedacht, dass es so viel Laune macht.

  17. #337
    Warum gibt es org-mode nur für emacs /o\
    Warum fühlt sich emacs mit evil-mode immer noch nicht gut an /o\
    Warum ist vimscript so blöd und elisp so cool /o\
    Warum kann es keinen coolen emacs- oder vim-fork geben, der die gute Textverarbeitung vom vim mit der krassen Erweiterbarkeit (von mir aus auch nur org-mode, ich bin nicht wählerisch) von emacs kombiniert /o\

    Der Buddhismus hat recht, das Leben ist von Leid geprägt.

  18. #338
    Zitat Zitat von Tako Beitrag anzeigen
    Der Buddhismus hat recht, das Leben ist von Leid geprägt.
    Sublime Text ausprobiert? Soll einen brauchbaren vim-mode haben.

  19. #339
    Zitat Zitat von Mivey Beitrag anzeigen
    Sublime Text ausprobiert? Soll einen brauchbaren vim-mode haben.
    Ja, aber kein org-mode. Ich will entweder org-mode in vim oder einen emacs, der sich verhält wie vim.

  20. #340
    Zitat Zitat von Tako Beitrag anzeigen
    Ja, aber kein org-mode. Ich will entweder org-mode in vim oder einen emacs, der sich verhält wie vim.
    https://github.com/danielmagnussons/orgmode
    Das mal angesehen? Oder tut das nicht alles was du willst?

Berechtigungen

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