{"id":226,"date":"2008-12-10T09:58:00","date_gmt":"2008-12-10T09:58:00","guid":{"rendered":"http:\/\/www.tutego.de\/blog\/javainsel\/?p=226"},"modified":"2008-12-10T09:58:00","modified_gmt":"2008-12-10T09:58:00","slug":"thema-des-monats-programmieraufgaben-javablog-pause","status":"publish","type":"post","link":"https:\/\/www.tutego.de\/blog\/javainsel\/2008\/12\/thema-des-monats-programmieraufgaben-javablog-pause\/","title":{"rendered":"Thema des Monats: Programmieraufgaben \/ JavaBLOG Pause"},"content":{"rendered":"<div xmlns='http:\/\/www.w3.org\/1999\/xhtml'>Anders als bei den \u00fcblichen kleinen Beispielen f\u00fcr eine bestimmte API und Technologie sollen nun drei Aufgaben zur Auswahl stehen. Jeder kann nach Lust, Zeit und Laune eine\/jede Aufgabe l\u00f6sen.<\/p>\n<p><b>Aufgabe 1<br \/><\/b><br \/><span class='nfakPe'>Brainfuck<\/span> (<a target='_blank' href='http:\/\/de.wikipedia.org\/wiki\/Brainfuck'>http:\/\/de.wikipedia.org\/wiki\/<wbr\/><span class='nfakPe'>Brainfuck<\/span><\/a>) und Ook! (<a target='_blank' href='http:\/\/de.wikipedia.org\/wiki\/Ook'>http:\/\/de.wikipedia.org\/wiki\/<wbr\/>Ook<\/a>!) sind einfache Turing-vollst\u00e4ndige Sprachen, f\u00fcr die sich sehr leicht Interpreter in Java schreiben lassen. F\u00fcr <span class='nfakPe'>Brainfuck<\/span> gibt es mittlerweile sogar eine IDE:<a target='_blank' href='http:\/\/hardtware.de\/products\/brainfuck.php'> http:\/\/hardtware.de\/products\/<wbr\/><span class='nfakPe'>brainfuck<\/span>.php<\/a>. Die Aufgabe ist, unter Java 6 einen eleganten Compiler zu bauen, der aus einem <span class='nfakPe'>Brainfuck<\/span>&#8211; oder Oak!-Programm ein ausf\u00fchrbares Java-Programm in Form einer .class-Datei generiert. Der Aufruf kann so aussehen:<\/p>\n<p>$ java BrainfuckC Application.bf<\/p>\n<p>Successfully generated Application.class<\/p>\n<p>$ java Application<\/p>\n<p><b>Aufgabe 2<br \/><\/b><\/p>\n<p>Gegeben ist eine potenziell sehr gro\u00dfe ASCII-Datei mit Ganzzahlen im Wertebereich +-1000000, die durch Leerzeichen, Tab oder Return getrennt sind. \u00dcber die Datei soll eine Statistik gefahren werden, sodass am Ende die gr\u00f6\u00dfte und kleinste Zahl sowie die maximale Teilsumme ausgegeben wird. Gesucht ist das schnellste Programm.<\/p>\n<p>$ java Stat numbers.txt<\/p>\n<p>Min: 3, Max: 199933, Maximale Teilsumme 4785<\/p>\n<p>PS: Die maximale zusammenh\u00e4ngende Teilsumme von zum Beispiel<\/p>\n<p>{-18,5,-3,9,4,-12} ist 5 + -3 + 9 + 4 = 15.<\/p>\n<p><b>Aufgabe 3<br \/><\/b><br \/>Microsoft PowerPoint kann Folien im XML-Format speichern. Dazu verwendet Microsoft Zip-Dateien mit der Endung pptx. Im Zip-Archiv befindet sich ein Order ppt\/slides und jede PowerPoint-Folie liegt dort als XML-Datei vor. Schreibe ein Swing-Programm, mit dem man einfache Text-Folien darstellen kann. Der R\u00fcckgriff auf beliebige Java-OpenSouce-Bibliotheken ist ausdr\u00fccklich gew\u00fcnscht.<\/p>\n<p>L\u00f6sungen k\u00f6nnen gerne in dem Blog gepostet werden (oder Verweise auf die L\u00f6sungen).<\/p>\n<p><b>Blog-Pause<br \/><\/b><br \/>In den letzten Wochen gab es keine Posts, da ich auf den Philippinen, Brunei und Indonesien (ja, auch Java) war. Nach der Reise habe ich interessante Java-Neuigkeiten in den Blog nachgetragen. Nun wird es voraussichtlich f\u00fcr einige Wochen wieder keine weiteren Eintr\u00e4ge geben, da ich nach Afrika fliege und Namibia, S\u00fcdafrika, Swaziland, Lesotho, Botswana, Zambia, Mozambique, Malawi, Tansania, Kenia, Ruanda besuchen werde. Wollen wir hoffen, dass dies hier nicht der letzte Blog-Eintrag ist \ud83d\ude09<\/div>\n","protected":false},"excerpt":{"rendered":"<p>Anders als bei den \u00fcblichen kleinen Beispielen f\u00fcr eine bestimmte API und Technologie sollen nun drei Aufgaben zur Auswahl stehen. Jeder kann nach Lust, Zeit und Laune eine\/jede Aufgabe l\u00f6sen. Aufgabe 1Brainfuck (http:\/\/de.wikipedia.org\/wiki\/Brainfuck) und Ook! (http:\/\/de.wikipedia.org\/wiki\/Ook!) sind einfache Turing-vollst\u00e4ndige Sprachen, f\u00fcr die sich sehr leicht Interpreter in Java schreiben lassen. F\u00fcr Brainfuck gibt es mittlerweile [&hellip;]<\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"_jetpack_memberships_contains_paid_content":false,"footnotes":"","_links_to":"","_links_to_target":""},"categories":[13],"tags":[],"class_list":["post-226","post","type-post","status-publish","format-standard","hentry","category-die-wochentliche-dosis-java"],"jetpack_featured_media_url":"","jetpack_sharing_enabled":true,"_links":{"self":[{"href":"https:\/\/www.tutego.de\/blog\/javainsel\/wp-json\/wp\/v2\/posts\/226","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.tutego.de\/blog\/javainsel\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.tutego.de\/blog\/javainsel\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.tutego.de\/blog\/javainsel\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/www.tutego.de\/blog\/javainsel\/wp-json\/wp\/v2\/comments?post=226"}],"version-history":[{"count":0,"href":"https:\/\/www.tutego.de\/blog\/javainsel\/wp-json\/wp\/v2\/posts\/226\/revisions"}],"wp:attachment":[{"href":"https:\/\/www.tutego.de\/blog\/javainsel\/wp-json\/wp\/v2\/media?parent=226"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.tutego.de\/blog\/javainsel\/wp-json\/wp\/v2\/categories?post=226"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.tutego.de\/blog\/javainsel\/wp-json\/wp\/v2\/tags?post=226"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}