[過去ログ]
プログラミングのお題スレ Part13 (1002レス)
プログラミングのお題スレ Part13 http://mevius.5ch.net/test/read.cgi/tech/1549160513/
上
下
前次
1-
新
通常表示
512バイト分割
レス栞
抽出解除
レス栞
このスレッドは過去ログ倉庫に格納されています。
次スレ検索
歴削→次スレ
栞削→次スレ
過去ログメニュー
666: デフォルトの名無しさん [sage] 2019/03/14(木) 18:00:35.68 ID:38t26SL0 お題: 何も出力しないプログラム自身のコードをソートするとhello worldを出力するプログラムを作れ http://mevius.5ch.net/test/read.cgi/tech/1549160513/666
692: デフォルトの名無しさん [] 2019/03/15(金) 00:50:01.20 ID:ltf0XXfV >>666 I 行単位で昇順にソートする場合 exit "hello world" println 文字単位のソートの場合は難しそう。 http://mevius.5ch.net/test/read.cgi/tech/1549160513/692
699: デフォルトの名無しさん [] 2019/03/15(金) 10:50:31.62 ID:ltf0XXfV >>666 Lua a=ture a=a or print("hello world") http://mevius.5ch.net/test/read.cgi/tech/1549160513/699
702: デフォルトの名無しさん [] 2019/03/15(金) 12:06:15.98 ID:phFelL6J >>666 「ソートすると」ではなく「ソートしてからその出力を実行またはコンパイルして実行すると」なのでは? http://mevius.5ch.net/test/read.cgi/tech/1549160513/702
712: デフォルトの名無しさん [] 2019/03/16(土) 06:51:03.68 ID:x9tnPyz1 >>666 Haskell 空文字は出力しないと動かないから許して。(動く場合はmain =でパターンマッチして出力文埋め込むだけだけど) ソートした自身の書き込み先、実行先は自身じゃ無いといけないとは書いてない。 import System.Process main = putStr "" >> readFile "runmyself.hs" >>= \f -> writeFile "runmyself2.hs" ((replace.unlines.qsort.lines) f) >> callCommand "runghc runmyself2.hs" replace [] = [] replace (p:u:t:s:t2:r:x:y:z:xs) | (p:u:t:s:t2:r:x:y:z:[]) == "putStr \"\"" = "putStrLn \"Hello World\"" ++ replace xs replace (a1:a2:a3:a4:a5:a6:a7:a8:a9:a10:a11:a12:a13:a14:a15:a16:a17:a18:a19:a20:a21:a22:a23:a24:a25:a26:a27:a28:a29:a30:a31:a32:a33:a34:a35:a36:a37:xs) | (a1:a2:a3:a4:a5:a6:a7:a8:a9:a10:a11:a12:a13:a14:a15:a16:a17:a18:a19:a20:a21:a22:a23:a24:a25:a26:a27:a28:a29:a30:a31:a32:a33:a34:a35:a36:a37:[]) == ">> callCommand \"runghc runmyself2.hs\"" = "" ++ replace xs replace (x:xs) = x:replace xs qsort [] = [] qsort (x:xs) = qsort [s| s <- xs, s <= x] ++ [x] ++ qsort [l| l <- xs, l > x] http://mevius.5ch.net/test/read.cgi/tech/1549160513/712
メモ帳
(0/65535文字)
上
下
前次
1-
新
書
関
写
板
覧
索
設
栞
歴
スレ情報
赤レス抽出
画像レス抽出
歴の未読スレ
AAサムネイル
Google検索
Wikipedia
ぬこの手
ぬこTOP
0.038s