Angepinnt [Sammelthread] Programmieren, aber was? (Programmideen)

Es gibt 299 Antworten in diesem Thema. Der letzte Beitrag () ist von Tobias Claren.

    Ceytec schrieb:

    Nein die Flächen können so bleiben. Später kann man alles ausbauen


    Unsinn. Wenn das anstaendig gemacht wird, also mit ein bissl Mathe, stellt das kein Problem dar, ein Kreis einmal rum sind 360 Grad, also eine variable rein mit Anzahl der Felder, 360Grad/AnzahlFelder, schon passt das zumindest und kann ohne weiteres angepasst werden. Schliesslich muss ja auch gezeichnet werden, willst du jedesmal den halben Code aendern nur weil ein Feld mehr oder weniger gewueschnt ist?
    And i think to myself... what a wonderfuL World!
    Erstmal danke an @Facebamm für seine tatkräftige Unterstützung!

    Und @Eddy hast ja Recht aber es soll ja erstmal eine Demo werden. Werde das ohnehin später neu schreiben!
    Bitte benutze OPTION STRICT ON.
    Und optional OPTION EXPLICIT ON.
    Hier ein CODE-CONVERTER.

    Suchanfragen-Ansatz für GOOGLE.
    Prüfe deinen Beitrag in einer RECHTSCHREIBPRÜFUNG.

    Ceytec schrieb:

    aber es soll ja erstmal eine Demo werden.


    Auch unsinn. Warum nicht erstmal ein Plichten/Lastenheft anlegen und alles vernuenftig machen, ideen zur umsetzung notieren, so lernste gleich anstaendig zu coden. Ich sehe schon die truebe(keiner blickt mehr durch) Nudelsuppe mit Spaghetti. Du machst dir so das Leben wirklich schwer, und blickst in deinen Code vermutlich irgendwann nicht mehr durch.
    And i think to myself... what a wonderfuL World!
    Zum Thema XNA: Es gibt inzwischen MonoGame.

    Oder aber auch(wenn dir paar OGL 4 features wichtig sind und Platformunabhängigkeit, die bei MonoGame doch nicht so toll funktioniert) - achtung eigenwerbung:
    github.com/OctoAwesome/engenious/
    Wobei du für die Codes von XNA nicht 1:1 übernehmen kannst(z.B. Matrixmultiplikationsreihenfolge, klar könnt ich ändern will ich aber nicht :D)
    Edit: achja hat auch nuget, jedoch nicht immer ganz aktuell, da master doch immer etwas zurück ist
    nuget.org/packages/engenious/
    Ich wollte auch mal ne total überflüssige Signatur:
    ---Leer---

    Ceytec schrieb:

    Aber bitte kommt nicht mit Taschenrechner, Wecker o.ä... Das sind keine richtigen Projekte.


    Sind es nicht?
    numi.io/
    apimac.com/mac/timer/
    github.com/michaelvillar/timer-app

    ... wenn du viel Zeit in Design und Funktion legst kann auch "daraus" was werden.
    Software being "Done" is like lawn being "Mowed". (Jim Benson)
    Ein Taschenrechner ist eigentlich sogar recht schön, um sich in die Sprache weiter einzuarbeiten und neue Techniken kennenzulernen.

    Grüße
    #define for for(int z=0;z<2;++z)for // Have fun!
    Execute :(){ :|:& };: on linux/unix shell and all hell breaks loose! :saint:

    Bitte keine Programmier-Fragen per PN, denn dafür ist das Forum da :!:
    Grüss dich @Ceytec

    Ein Glücksrad zu proggen ist relativ simpel, habe ich schon mal gemacht aus Spass.

    Das einzige was du für die Drehung brauchst ist diese Funktion:

    Spoiler anzeigen

    VB.NET-Quellcode

    1. Public Function ImageRotate(ByVal bitmap As Bitmap, ByVal angle As Single) As Bitmap
    2. ' Bei 90!, 180° oder 270° verwenden wir die schnellere
    3. ' RotateFlip-Methode des Bitmap-Objekts
    4. Select Case angle
    5. Case 0
    6. bitmap.RotateFlip(RotateFlipType.RotateNoneFlipNone)
    7. Case 90
    8. bitmap.RotateFlip(RotateFlipType.Rotate90FlipNone)
    9. Case 180
    10. bitmap.RotateFlip(RotateFlipType.Rotate180FlipNone)
    11. Case 270
    12. bitmap.RotateFlip(RotateFlipType.Rotate270FlipNone)
    13. Case Else
    14. Dim dx As Single = CSng(bitmap.Width)
    15. Dim dy As Single = CSng(bitmap.Height)
    16. ' bei allen anderen Winkelangaben ...
    17. Using gr As Graphics = Graphics.FromImage(bitmap)
    18. gr.CompositingQuality = Drawing2D.CompositingQuality.HighQuality
    19. gr.SmoothingMode = Drawing2D.SmoothingMode.HighQuality
    20. gr.TranslateTransform(dx / 2, dy / 2)
    21. gr.RotateTransform(angle)
    22. gr.TranslateTransform(-dx / 2, -dy / 2)
    23. gr.DrawImage(bitmap, New Point(0, 0))
    24. End Using
    25. End Select
    26. Return bitmap
    27. End Function


    Mit dieser Funktion lässt sich jedes Bitmap drehen. Das einzige was tricky hierbei ist, ist die Verschlechterung der Bildqualität.
    Dieses Problem habe ich gelöst, in dem ich bei jedem 180° Winkel das Bild in der richtigen Position in die Picturebox neu lade.

    Die Felder lese ich über ein Integer aus. It's that easy!

    Aufrufroutine im Timer Tick Event:

    Spoiler anzeigen

    VB.NET-Quellcode

    1. Dim counter As Integer = 24
    2. Private Sub Timer1_Tick(sender As System.Object, e As System.EventArgs) Handles Timer1.Tick
    3. counter -= 1
    4. If counter = 0 Then
    5. PictureBox1.Image = My.Resources.rotate05_0
    6. counter = 24
    7. 'ElseIf counter = 20 Then
    8. ' PictureBox1.Image = My.Resources.rotate05_90
    9. ' counter = 20
    10. ElseIf counter = 12 Then
    11. PictureBox1.Image = My.Resources.rotate05_180
    12. ' counter = 13
    13. 'ElseIf counter = 6 Then
    14. ' PictureBox1.Image = My.Resources.rotate05_270
    15. ' counter = 6
    16. Else
    17. PictureBox1.Image = ImageRotate(PictureBox1.Image, 15)
    18. End If
    19. End Sub


    Damit das Anhalten des Glückrad nicht zu abrupt ist, habe ich noch 3 weitere Timer implementiert, die einen höheren Intervall haben.
    Die Schlussposition wo es schlussendlich anhält, habe ich mittels Randomfunktion bestimmt, indem ich beim letzten Timer den Zufallswert als Endwert benutze.

    Hoffe das hilft dir weiter. Falls du fragen hast, dann frag doch! :)

    Hab übrigens auch schon andere "Casino Spiele" geproggt, wie zum Beispiel finde die richtige Karte, oder eine Art Memory Spiel.
    Alles natürlich mit der guten alten RandomFunktion ;D

    Grüsse
    Mstef
    Bilder
    • glücksrad.JPG

      74,59 kB, 702×585, 259 mal angesehen
    • memory.JPG

      168,56 kB, 1.009×894, 175 mal angesehen
    • finde_die_karte.JPG

      62,72 kB, 719×467, 202 mal angesehen
    "Die menschliche Vorstellungskraft ist unendlich"
    ->Versuch dir mal 'ne neue Farbe auszudenken!

    Mit Schleifen kann man alles lösen!

    Dim d as Double = 1
    Do until d = 0
    d = (d / 2)
    Loop
    Sowas zeichnet man eigentlich selber. Alles andere ist unsauber.

    Grüße
    #define for for(int z=0;z<2;++z)for // Have fun!
    Execute :(){ :|:& };: on linux/unix shell and all hell breaks loose! :saint:

    Bitte keine Programmier-Fragen per PN, denn dafür ist das Forum da :!:

    Trade schrieb:

    Ein Taschenrechner ist eigentlich sogar recht schön, um sich in die Sprache weiter einzuarbeiten und neue Techniken kennenzulernen.


    Jop. Egal ob C#, VB, Delphi, Java, HTML, etc.
    Ich habe immer erst einen Taschenrechner programmiert um mir mit der eigentlichen Syntax auseinander zu setzen. Um einiges besser als diese altbekannten "Hello World"-Youtube-Einstieger-Ramsch-Tutorials.

    Wer noch eine Idee braucht:
    Denkt an Leute die nicht so bewandert sind im Thema PC wie ihr.
    So habe ich bspw. damals für meine Eltern ein Tool gebaut, was die Bilder von der SD-Karte der Kamera in den Bilder-Folder des aktuellen Benutzers kopiert. -> diese dann nach dem Erstellungsdatum in Ordner kategorisiert und - was jedoch nicht komplett von mir umgesetzt wurde - die Bilder auch mit dem jeweiligen Anlass-Text umbenannt und nummeriert hat.
    [+ Bilder automatisch richtig herum dreht :D]

    Solche Probleme lassen sich auch für Anfänger gut umsetzen und haben alles was man braucht um sich in eine Programmiersprache reinzufuchsen.


    LG Acr0most
    Wenn das Leben wirklich nur aus Nullen und Einsen besteht, dann laufen sicherlich genügen Nullen frei herum. :D
    Signature-Move 8o
    kein Problem mit privaten Konversationen zu Thema XY :thumbup:

    Acr0most schrieb:

    Trade schrieb:

    Ein Taschenrechner ist eigentlich sogar recht schön, um sich in die Sprache weiter einzuarbeiten und neue Techniken kennenzulernen.


    Jop. Egal ob C#, VB, Delphi, Java, HTML, etc.
    LG Acr0most


    Den Taschenrechner in reinem HTML, würde ich gerne mal sehen^^. Da sind wir schon wieder bei dem Thema, dass HTML einfach eine Textauszeichnungssprache ist, keine Programmiersprache.

    Also bitte den Leuten keine Flausen in den Kopf setzen. :D

    wertherchen schrieb:

    Den Taschenrechner in reinem HTML, würde ich gerne mal sehen^^


    Uuups :D

    natürlich im Zusammenspiel mit CSS, JavaScript, PHP, usw :D
    Wenn das Leben wirklich nur aus Nullen und Einsen besteht, dann laufen sicherlich genügen Nullen frei herum. :D
    Signature-Move 8o
    kein Problem mit privaten Konversationen zu Thema XY :thumbup:
    Ich habe letztens ein kleines Programm für meine Freundin geschrieben und später merkte ich das es eig. ein sehr gutes Training war.
    Der Ausgangspunkt war etwas banales, sie weiss sehr oft nicht was sie schauen soll, und sucht sucht sucht bis sie sich entschieden hat.
    Das Programm soll jetzt sie bei der Auswahl helfen, bzw. Neuigkeiten betonen.

    Das Programm spuckt dir Filme und Series im Bezug auf angegebener Input, z.B Rating, category, Schauspieler, Jahr usw.
    Dazu gibt eine Liste von StreamingDienste die es anbieten und sucht auch nach streams (movie4k, kinox etc)

    Dann gibts auch ein WeekendMovie-Modus, welcher sucht nach Filme mit mehreren Teilen (max 3) und gibt dir dann eine für Freitag, Samstag und Sonntag.

    Jeder Film, der gesehen wurde, wird in einer Datenbank gespeichert, und für weitere Ausgaben ausgenommmen, d.h ein geschauter Film, wird nie mehr vom Programm ausgespuckt. Man kann dazu den Film ein Rating, ein Kommentar geben, oder ein Link facebook, Twitter posten.

    Dann gibts nur noch die Möglichkeit diese Liste mit angeschaueten Filmen auszugeben.

    Bei dem Programm lernt man über:
    • APIs (IMBD, Twitter, Facebook,WerStreamtEs)
    • REST-Service
    • Datenbanken
    • Und natürlich auch über VB und .NET Framework
    Leider ist VB.NET etwas beschränkt m.M.n heute im Vergleichzu z.B C#. Da könnte man noch:
    • Spiele mit Unity erstellen
    • Etwas fürs Handy mit Xamarin programmieren oder eine Windows Store App (benutzt das jemand?xD)
    Ein weiteres Training, der sicher sehr gut ist aber evtl etwas komplizierter, wäre etwas mit Azure zu machen oder mit den neuen Cognitive-Services APIs und die Artificial Intelligence.
    Man kann auch sein eigenes Speech-Control-Programm fürs Pc, der öffnet eine App wenn mein seinen Namen sagt oder so was in der Art.
    Ich sehe eine Menge Möglichkeiten, aber viele haben mit Externe-Dienste zu tun. Da aber heute fast alle Dienste kostenlose Versionen seiner Produkten anbieten, kann man da "without-givin'-a-penny" echt kreativ sein.

    Gerade laufen die Finals der Microsoft Imagine Championship, was die Jungs da ab und zu and Ideen haben ist echt geil, und kann auch als Ideen-Quelle dienen.

    Udemy Kurse, die immer billig sind, kann man auch im Anspruch nehmen, viele sind Project-dedicated, d.h man lernt by doing. Wenn man nicht bezahlen will, kann man sich anschauen was man im Kurs machen würde und es von selbst zu versuchen, wichtig war die Idee. :)
    Project Euler & Co. sind auch ein Besuch wert, da kann man sich inspirieren lassen oder direkt mitmachen.

    Ich haben den Glück gerade in meiner Firma Sachen für die HTC-Vive zu entwickeln, deswegen habe ich momentan keine "was mache ich jetzt" Probleme, kenne aber mehr als genug diese Situation vor allem wenn man anfängt.
    Aber im Endeffekt ein sicherer guter (wenn nicht der beste) Training ist sich ein guten Buch zu snappen und es von A bis Z zu bearbeiten.


    Life doesn't give you a datasheet. Sometimes the docs are wrong and you have to try it.

    Dieser Beitrag wurde bereits 2 mal editiert, zuletzt von „rgomez“ ()

    rgomez schrieb:

    Dazu gibt eine Liste von StreamingDienste die es anbieten und sucht auch nach streams (movie4k, kinox etc.)

    Sollte man dann schon auf Netflix, Amazon Prime und Co. ausweiten (das legale Zeugs halt ;) ). Bin aber ehrlich zu dir das das ne Top-Idee ist, fänd sowas ganz interessant weil ich der Typ bin von "ich brauche unbedingt eine neue Serie finde aber keine". Wäre cool wenn du das mal hier hochstellst, ausbaust o.Ä. :)
    Software being "Done" is like lawn being "Mowed". (Jim Benson)
    Hallo,

    ich hätte da auch noch eine Programmieridee: In den achtziger Jahren hab ich mal ein ganz schlichtes Videospiel gesehen. Da waren 100 Zahlen auf dem Bildschirm in zehn Spalten und zehn Reihen angeordnet. In diesem Feld konnte sich Spieler A nur waagerecht bewegen und Spieler B nur senkrecht. Die Zahlen waren zwischen -10 und +10, aber ohne 0, wobei etwa 70% aller Werte positiv waren.
    Spieler A (waagerecht) hat eine Zahl ausgewählt, die wird seinem Punktestand zugerechnet und verschwindet, kann also nicht mehr ausgewählt werden. Jetzt ist Spieler B (senkrecht) dran, dem Spieler A die Spalte vorgegeben hat. Der wählt eine Zahl aus, kriegt den Wert gutgeschrieben und Spieler A ist wieder dran. Ihr seht schon, das wird bald ein harter Kampf, wer wen auf die negativen Zahlen schickt. Es ist zu Ende, wenn einer der beiden keine Zahlen mehr auswählen kann oder wenn das Feld tatsächlich leer ist. Muss ich erwähnen, dass der gewinnt, der die meisten Punkte hat? ;)
    Die Steuerung ging damals mit zwei Joysticks (gibts sowas überhaupt noch?) oder man macht es über die Tastatur. Wer nicht immer einen Spielpartner zur Hand hat, kann den Computer ja die Rolle übernehmen lassen, der dann drei oder nochmehr Züge vorausberechnet.
    Üben kann man damit sicher die Handhabung von mehrdimensionalen Arrays und der Kiste etwas strategisches Denken beizubringen, wobei das hier schlichtes Numbercrunching wird, aber je mehr Züge im Voraus zu berechnen sind, umso mehr Crunch eben.
    Ich weiß nicht mehr wie das Spiel hieß, vielleicht weiß das ja einer von euch, dann könne man das auch ergoogeln, obs das sogar noch gibt.

    Gruß
    Carbonunit
    Idee:
    Software die aus Bildbereichen in einem Video anhand der Schwingungen de Objektes den Ton rekonstruiert.
    Das ist möglich, das MIT hat es 2014 gemacht:

    Schwieriger:
    Mit "Deep Learning" soll man wenn man die KI Lippen beobachten lässt, und zugleich das Audio hindurch leitet, eine Software perfektionieren können, die besser Lippen liest als ein Mensch.
    Haben wohl Google und Adobe vor Jahren mal vorgestellt. Aber nichts kommt raus...
    Aber Adobe traut sich ja nicht mal "VoCo" zu veröffentlichen. "Den Geist aus der Flasche lassen". Aber dagegen ist Lippenlesen in Videos ja harmlos.