Vorheriges Thema anzeigen :: Nächstes Thema anzeigen |
Autor |
Nachricht |
nemored
Anmeldungsdatum: 22.02.2007 Beiträge: 4651 Wohnort: ~/
|
Verfasst am: 27.07.2013, 07:53 Titel: [FBCC #7] Weltenprogramm |
|
|
Da die Teilnehmerzahl bisher recht niedrig ist - möglicherweise, weil sich einige mit der Komplexität der Aufgaben überfordert fühlen - kommt diesmal eine ganz einfache Aufgabe: Schreibe ein "Hallo Welt"-Programm.
Etwas konkreter:
Schreibe ein Programm, das auf möglichst kreative Weise "Hallo Welt" ausgibt (z. B. auf dem Bildschirm). Der Klartext "Hallo Welt" sollte dabei im Quelltext nicht auftauchen.
Ich hätte vorgeschlagen, dass das Programm diesmal komplett mit FreeBASIC-Hausmitteln geschrieben werden muss, aber da vielleicht jemand auf die Idee kommt, eine 3D- oder Soundausgabe von "Hallo Welt" umzusetzen, sind auch diesmal externe Bibliotheken zulässig. Ansonsten gelten die alten Bestimmungen: Plattformunabhängigkeit, freie Lizenz, Nennung der Quellen externer Bestandteile.
Einsendeschluss ist der Sonntag, 18.08.2013 um 23:59 Uhr. _________________ Deine Chance beträgt 1:1000. Also musst du folgendes tun: Vergiss die 1000 und konzentriere dich auf die 1. |
|
Nach oben |
|
|
ALWIM
Anmeldungsdatum: 08.08.2006 Beiträge: 1047 Wohnort: Niederbayern
|
Verfasst am: 27.07.2013, 20:18 Titel: |
|
|
Zitat: | Der Klartext "Hallo Welt" sollte dabei im Quelltext nicht auftauchen. | Sollte oder darf???
Das wäre schon zu klären vorher.
Gruß
ALWIM _________________ SHELL SHUTDOWN -s -t 05 |
|
Nach oben |
|
|
nemored
Anmeldungsdatum: 22.02.2007 Beiträge: 4651 Wohnort: ~/
|
Verfasst am: 27.07.2013, 20:21 Titel: |
|
|
Wenn sich das Programm erst einmal auf interessante Art und Weise seinen String zusammenbasteln muss, wäre das für mich ein Pluspunkt in meiner Entscheidung - allerdings kann ich da nur für mich allein sprechen. _________________ Deine Chance beträgt 1:1000. Also musst du folgendes tun: Vergiss die 1000 und konzentriere dich auf die 1. |
|
Nach oben |
|
|
ALWIM
Anmeldungsdatum: 08.08.2006 Beiträge: 1047 Wohnort: Niederbayern
|
Verfasst am: 28.07.2013, 08:06 Titel: |
|
|
Bin mit meinem Projekt tatsächlich schon fertig! Kann es aber noch nicht veröffentlichen, sonst gewinne ich den 7. Wettbewerb nicht!
Mir ist da jetzt was ganz cooles/tolles eingefallen!
Gruß
ALWIM _________________ SHELL SHUTDOWN -s -t 05 |
|
Nach oben |
|
|
Roland Chastain
Anmeldungsdatum: 05.12.2011 Beiträge: 193 Wohnort: Frankreich
|
Verfasst am: 28.07.2013, 19:05 Titel: Re: [FBCC #7] Weltenprogramm |
|
|
nemored hat Folgendes geschrieben: | Schreibe ein "Hallo Welt"-Programm. |
Gute Idee ! |
|
Nach oben |
|
|
Quisslich
Anmeldungsdatum: 09.09.2012 Beiträge: 38
|
Verfasst am: 01.08.2013, 11:25 Titel: |
|
|
ok, dann will ich meinen Beitrg mal vorstellen, auch wenn ich mir nicht ganz sicher bin, ob das so im Sinne der Aufgabenstellung liegt.
Da die Zeichenkette "Hallo Welt" ja nicht im Klartext im Programm vorliegen soll, dachte ich mir, sie in verschlüsselter Form abzulegen. Dazu wird natürlich ein Algorithmus benötigt, der eine Zeichenkette ver- und auch wieder entschlüsseln kann.
Als Grundlage dazu bietet sich ja der Ascii-Code der Buchstaben an. Ich dachte, diesen Code kann man in einstellige Faktoren zerlegen, die man dann wieder in einem String ablegen kann. Wollte ich z.B. den Buchstaben "K" (= Ascii 75) verschlüsselt ablegen, so ist diese Zahl durch 5 ohne Rest teilbar. Der Rest von 15 ist wieder ohne Rest durch 5 teilbar. "K" ist verschlüsselter Form könnte also "553" heissen. Durch Multiplikation der einzelnen Faktoren 5 * 5 * 3 erhält man wieder den Ascii-Code für "K".
Das klappt natürlich nicht immer. Z.B. Buchstaben "a" (= Ascii 97) lässt sich durch keinen einstelligen ganzzahligen Faktor ohne Rest teilen. Subtrahiert man jedoch 1 vom Ascii-Wert, ist der Rest wieder durch eine einstellige Ganzzahl teilbar. In verschlüsselter Form würde "a" also folgendermaßen aussehen: "268x", heißt 2*6*8 = 96, das "x" heißt addiere 1 dazu, also haben wir wieder 97.
Da ja nicht nur einzelne Buchstaben verschlüsselt werden sollen, müssten einzelne verschlüsselte Buchstaben durch ein Trennzeichen getrennt werden. z.B. "_"
Die Zeichenkette "Ka" würde dann verschlüsselt "553_268x_" lauten.
Damit die verschlüsselten Texte bei jeder Verschlüsselung etwas anders aussehen, werden die Zeichen für "+1" und die Endemarke zufällig aus einem bestimmten Wertebereich von darstellbaren Ascii-Zeichen gewählt.
Die Zeichenkette "Hallo Welt" könnte also z.B. in vier verschiedenen Varianten so aussehen:
Code: |
Dim As String helloworld(3)= _
{ "89*268x'269$269(49^3-48#47l3(455h'269%47A4,", _
"89+268=$269/269,49N3%48,47r3*455v#269/47@4+", _
"89*268m%269$269+49Y3'48#47I3/455?*269%47{4+", _
"891268z1269*269#49T3$48/47F3(455B!269'47Y4#" }
|
Und genau so ist das in meinem Beitrag auch definiert.
http://www.freebasic-portal.de/downloads/programmierwettbewerbe/fbcc7-weltenprogramm-294.html |
|
Nach oben |
|
|
ALWIM
Anmeldungsdatum: 08.08.2006 Beiträge: 1047 Wohnort: Niederbayern
|
Verfasst am: 01.08.2013, 17:22 Titel: |
|
|
Zitat: | (ich hoffe es sind mehrere Beiträge zum FBCC erlaubt.) |
Normalerweise nur ein Beitrag? Da könnte ja gleich einer 10 Programme schreiben um dann die bestmöglichen Chancen zu haben! Ich bin dafür, dass nur ein Beitrag erlaubt ist! man kann zwar mehrere Beiträge veröffentlichen, aber die zählen halt dann nicht mehr!
Gruß
ALWIM _________________ SHELL SHUTDOWN -s -t 05 |
|
Nach oben |
|
|
volta
Anmeldungsdatum: 04.05.2005 Beiträge: 1875 Wohnort: D59192
|
Verfasst am: 01.08.2013, 18:15 Titel: |
|
|
Hi,
wer mehr als ein Programm einreicht erhöht nicht seine Change zu gewinnen.
Im Gegenteil!
Wenn nur wir beide Alwim und Volta mit einem Programm daran teilnehmen würden, könnte das Ergebnis
Volta 6
ALWIM 4
lauten
Sollte ich zwei Programmen einreichen kann sich das Ergebnis so ändern:
Volta1 3
Volta2 3
ALWIM 4
_________________ Warnung an Choleriker:
Dieser Beitrag kann Spuren von Ironie & Sarkasmus enthalten.
Zu Risiken & Nebenwirkungen fragen Sie Ihren Therapeuten oder Psychiater. |
|
Nach oben |
|
|
ALWIM
Anmeldungsdatum: 08.08.2006 Beiträge: 1047 Wohnort: Niederbayern
|
Verfasst am: 01.08.2013, 18:25 Titel: |
|
|
volta hat Folgendes geschrieben: | Hi,
wer mehr als ein Programm einreicht erhöht nicht seine Change zu gewinnen.
Im Gegenteil!
Wenn nur wir beide Alwim und Volta mit einem Programm daran teilnehmen würden, könnte das Ergebnis
Volta 6
ALWIM 4
lauten
Sollte ich zwei Programmen einreichen kann sich das Ergebnis so ändern:
Volta1 3
Volta2 3
ALWIM 4
|
Irrtum!!! Ich nehme bis jetzt noch nicht teil! Und es sind schon 2 verfügbare Programme! Somit geht die Rechnung nicht ganz auf! Fertig wäre ich ja bereits! Lade es aber noch nicht hoch!
Edit:
@Volta:
Bekomme bei deinem Programm Textburner.bas folgende Meldung:
Zitat: | Textburner.bas(7) warning 24(0): Overflow in constant conversion |
Gruß
ALWIM _________________ SHELL SHUTDOWN -s -t 05 |
|
Nach oben |
|
|
volta
Anmeldungsdatum: 04.05.2005 Beiträge: 1875 Wohnort: D59192
|
Verfasst am: 01.08.2013, 19:09 Titel: |
|
|
ALWIM hat Folgendes geschrieben: |
Irrtum!!! Ich nehme bis jetzt noch nicht teil! Und es sind schon 2 verfügbare Programme! Somit geht die Rechnung nicht ganz auf! Fertig wäre ich ja bereits! Lade es aber noch nicht hoch! | ich nix verstehen??
ALWIM hat Folgendes geschrieben: |
@Volta:
Bekomme bei deinem Programm Textburner.bas folgende Meldung:
Zitat: | Textburner.bas(7) warning 24(0): Overflow in constant conversion |
|
Diese Meldung soll kommen wenn einem Integer ein RGB() Wert zugewiesen wird. RGB() stellt ein UInteger.Also:
Dim As Integer h = 60
Dim As UInteger bgc = RGB(120,120,120) _________________ Warnung an Choleriker:
Dieser Beitrag kann Spuren von Ironie & Sarkasmus enthalten.
Zu Risiken & Nebenwirkungen fragen Sie Ihren Therapeuten oder Psychiater. |
|
Nach oben |
|
|
Quisslich
Anmeldungsdatum: 09.09.2012 Beiträge: 38
|
Verfasst am: 01.08.2013, 19:47 Titel: |
|
|
@volta
sieht klasse aus, Kompliment. Allerdings stockt es bei mir sehr stark. Wenn ich jedoch an das Ende der DO .. LOOP-Schleife ein SLEEP 10 einbaue, ist es deutlich besser. Dann sieht es schön kontinuierlich aus.
Denke auch, warum nicht mehrere Beiträge, so groß ist die Resonanz bei den Contests ja nun auch nicht. |
|
Nach oben |
|
|
volta
Anmeldungsdatum: 04.05.2005 Beiträge: 1875 Wohnort: D59192
|
Verfasst am: 01.08.2013, 20:24 Titel: |
|
|
Danke Quisslich,
da ich auf einem Netbook mit bescheidener Grafikkarte arbeite, habe ich alles auf eine ruckelfreie Darstellung optimiert.
Wenn bei dir ein SLEEP die Ansicht flüssiger macht OK.
Es sind wohl immer Kompromisse nötig. _________________ Warnung an Choleriker:
Dieser Beitrag kann Spuren von Ironie & Sarkasmus enthalten.
Zu Risiken & Nebenwirkungen fragen Sie Ihren Therapeuten oder Psychiater. |
|
Nach oben |
|
|
ALWIM
Anmeldungsdatum: 08.08.2006 Beiträge: 1047 Wohnort: Niederbayern
|
Verfasst am: 01.08.2013, 20:52 Titel: |
|
|
volta hat Folgendes geschrieben: | ALWIM hat Folgendes geschrieben: |
Irrtum!!! Ich nehme bis jetzt noch nicht teil! Und es sind schon 2 verfügbare Programme! Somit geht die Rechnung nicht ganz auf! Fertig wäre ich ja bereits! Lade es aber noch nicht hoch! | ich nix verstehen??
ALWIM hat Folgendes geschrieben: |
@Volta:
Bekomme bei deinem Programm Textburner.bas folgende Meldung:
Zitat: | Textburner.bas(7) warning 24(0): Overflow in constant conversion |
|
Diese Meldung soll kommen wenn einem Integer ein RGB() Wert zugewiesen wird. RGB() stellt ein UInteger.Also:
Dim As Integer h = 60
Dim As UInteger bgc = RGB(120,120,120) |
Bis jetzt nehmen 2 Leute teil! Wenn ich auch noch ein Programm abliefern würde, dann sind es schon 3 Teilnehmer mit 4 Programmen. Also geht deine Rechnung irgendwie nicht ganz auf! _________________ SHELL SHUTDOWN -s -t 05 |
|
Nach oben |
|
|
Quisslich
Anmeldungsdatum: 09.09.2012 Beiträge: 38
|
Verfasst am: 01.08.2013, 21:52 Titel: |
|
|
@ALWIM
manchmal frage ich mich, ob du nur so tust, oder wirklich manchmal etwas schwer von Begriff bist. Sein "Rechnung" war doch nur beispielhaft zu verstehen.
@volta
SCREENSYNC am Ende der Schleife bewirkt das selbe, dann siehts schön aus. Ist bei mir wohl einfach nur zu schnell gelaufen und wenn die Bilder sich wiederholen, siehts rucklig aus. |
|
Nach oben |
|
|
Domso
Anmeldungsdatum: 02.02.2011 Beiträge: 109
|
|
Nach oben |
|
|
ALWIM
Anmeldungsdatum: 08.08.2006 Beiträge: 1047 Wohnort: Niederbayern
|
Verfasst am: 12.08.2013, 14:55 Titel: |
|
|
Bis jetzt nicht! Sind nur 3 Leute die mitmachen! Die waren es vorher auch schon! Also nix mit deutlich mehr!!! Es könnten aber 4 sein, wenn ich noch was einsende.
@Domso: Dein Programm ist nicht übel! Ich weiß nicht, ob ich da mit meinem Programm noch mithalten kann?
Einen kleinen Punktabzug gibt es allerdings, weil das Wort "Hallo Welt" einfach so und unverschlüsselt im Quellcode vorliegt!
Gruß
ALWIM _________________ SHELL SHUTDOWN -s -t 05 |
|
Nach oben |
|
|
Domso
Anmeldungsdatum: 02.02.2011 Beiträge: 109
|
Verfasst am: 12.08.2013, 19:54 Titel: |
|
|
naja, wenn man aber bedenkt, dass du und nemored vermutlich noch was einreichen werden, dann sind wir schon bei 5 teilnehmern...ein zuwachs von 66% ;O |
|
Nach oben |
|
|
ALWIM
Anmeldungsdatum: 08.08.2006 Beiträge: 1047 Wohnort: Niederbayern
|
Verfasst am: 13.08.2013, 11:31 Titel: |
|
|
Domso hat Folgendes geschrieben: | naja, wenn man aber bedenkt, dass du und nemored vermutlich noch was einreichen werden, dann sind wir schon bei 5 teilnehmern...ein zuwachs von 66% ;O |
Ich werde definitiv was einreichen, Donnerstag ist eh ein Feiertag. Den nutze ich dann, um was vernünftiges zu schreiben, sofern mir was gutes einfällt! Sollte mir wirklich nichts einfallen, kann es sein, dass ich doch nicht teilnehme! Theoretisch möglich, aber eher unwahrscheinlich.
Gruß
ALWIM _________________ SHELL SHUTDOWN -s -t 05 |
|
Nach oben |
|
|
volta
Anmeldungsdatum: 04.05.2005 Beiträge: 1875 Wohnort: D59192
|
Verfasst am: 13.08.2013, 12:50 Titel: |
|
|
am 28.07.2013 ALWIM hat Folgendes geschrieben: | Bin mit meinem Projekt tatsächlich schon fertig! Kann es aber noch nicht veröffentlichen, sonst gewinne ich den 7. Wettbewerb nicht!
Mir ist da jetzt was ganz cooles/tolles eingefallen! |
am 13.08.2013 ALWIM hat Folgendes geschrieben: | Ich werde definitiv was einreichen, Donnerstag ist eh ein Feiertag. Den nutze ich dann, um was vernünftiges zu schreiben, sofern mir was gutes einfällt! Sollte mir wirklich nichts einfallen, kann es sein, dass ich doch nicht teilnehme! Theoretisch möglich, aber eher unwahrscheinlich. | Was ist passiert?
Alle Daten verloren? _________________ Warnung an Choleriker:
Dieser Beitrag kann Spuren von Ironie & Sarkasmus enthalten.
Zu Risiken & Nebenwirkungen fragen Sie Ihren Therapeuten oder Psychiater. |
|
Nach oben |
|
|
ALWIM
Anmeldungsdatum: 08.08.2006 Beiträge: 1047 Wohnort: Niederbayern
|
Verfasst am: 13.08.2013, 13:39 Titel: |
|
|
volta hat Folgendes geschrieben: | am 28.07.2013 ALWIM hat Folgendes geschrieben: | Bin mit meinem Projekt tatsächlich schon fertig! Kann es aber noch nicht veröffentlichen, sonst gewinne ich den 7. Wettbewerb nicht!
Mir ist da jetzt was ganz cooles/tolles eingefallen! |
am 13.08.2013 ALWIM hat Folgendes geschrieben: | Ich werde definitiv was einreichen, Donnerstag ist eh ein Feiertag. Den nutze ich dann, um was vernünftiges zu schreiben, sofern mir was gutes einfällt! Sollte mir wirklich nichts einfallen, kann es sein, dass ich doch nicht teilnehme! Theoretisch möglich, aber eher unwahrscheinlich. | Was ist passiert?
Alle Daten verloren? |
Verloren nicht aber:
Das was ich programmiert habe, verstößt gegen die Regeln! Demnach muss ich also was neues programmieren. Habe das erst am Wochenende festgestellt! Habe 1. das Wort Hallo Welt (unverschlüsselt) im Quellcode drin (wäre vielleicht noch in Ordnung) und 2. die Plattformunabhängigkeit nicht beachtet. Da hilft es auch nicht den Preprozessor zu verwenden, weil das Programm dann bei Linux-Rechner nicht mehr korrekt funktioniert! Habe mal wieder die Win-API verwendet! Wie so oft!
Ich habe zwar noch zeitgleich ein 2. Programm geschrieben als Notlösung, aber das will ich ungern hochladen! Lieber lade ich gar nichts hoch, als einen Mist! Oder ich versuche das andere Programm Linuxfähig zu machen? Mal schauen was draus wird.
Noch habe ich ja Zeit!
Gruß
ALWIM _________________ SHELL SHUTDOWN -s -t 05 |
|
Nach oben |
|
|
|