- @neetsdkasu #
paizaオンラインハッカソンVol.6の回文のやつをCOBOLで解いてみた…
COBOLという言語は今回初めて使った。ちゅかれた…
コード:git.io/vZRf2
結果:paiza.jp/poh/joshibato/…
#_poh - @neetsdkasu #@neetsdkasu
OpenCOBOLの公式ドキュメント読みながら進めたが
英語がちゅらかったお
原因不明だがSORT命令とサブプログラムの引数渡しと2つ目のサブプログラムの変数メモリ確保(?)がうまく行かなくて
ソート自前実装とグローバル変数で何とか乗り越えた - @neetsdkasu #@neetsdkasu
あとIDEONEのCOBOLとPOHのCOBOLはバージョンなのか種類なのかコマンドライン引数が違うようで同じコードで動かんかった。
ちな投稿コードはIDEONEで動かそうとして全行にインデント入れたんだけど(動かなかったけど)そのまま提出しちゃったからbyte数がw - @neetsdkasu #@neetsdkasu
行頭インデントを削ってみたが1400byteくらいしか削れなかったw
真面目にやるなら変数名やプログラム名やパラグラム名やセクション名を変えたり、省略可能なEND-IFとかを略したりしまくればいいんだろけどw
結果:paiza.jp/poh/joshibato/…
#_poh - @neetsdkasu #@neetsdkasu
パラグラムじゃなくてパラグラフな
疲れてて間違えた - @neetsdkasu #@neetsdkasu
あちゃー!よく見たら文字列比較の処理が間違ってた!
単語の最後の文字を比較せずに同値扱いで返してるw
こんなんでよくテストケース突破できたなw
まだまだ凡ミスが出てきそう
git.io/vZRf2
#_poh - @neetsdkasu #@neetsdkasu
凡ミスを直してきた
修正箇所:git.io/vZR3U
結果:paiza.jp/poh/joshibato/…
(ちな、この結果はインデント削除したものなのでbyte数は多少小さい)
#_poh - @neetsdkasu #@neetsdkasu
俺のコードだと削れるとこ削っても5000byte切らなさそう
つか、よく見たらSeek-Reverse-Wordプログラムのインデント浅いw
マヌケや! - @neetsdkasu #@neetsdkasu
うおおお!某所でCOBOLコードはもっと簡潔に書けたことを知った!つかループ処理の構文あったんだな!予想もつかない名前だったから全然気がつかなかったぜ!
式演算も文字列比較ももっと簡易に出来たんだな!
俺のCOBOLコードは超無駄だらけだ! - @neetsdkasu #@neetsdkasu
等号不等号記号で文字列比較できたのかよ…
Compare-Stringsプログラムが完全に無駄じゃんwww - @neetsdkasu #@neetsdkasu
おお!不要な処理を削ったらだいぶシェイプアップした!
コード:git.io/vZ0Wj
結果:paiza.jp/poh/joshibato/…
#_poh - @neetsdkasu #@neetsdkasu
これが俺の限界シェイプアップ 1179byte
コード: git.io/vZ0zF
結果: paiza.jp/poh/joshibato/…
#_poh - @neetsdkasu #@neetsdkasu
#_poh 俺が提出したコードの中ではHaskellが一番頑張ってなさすぎかな・・・ っていうかRuby以外は全然頑張ってないな git.io/vZ0gk
- @neetsdkasu #@neetsdkasu
今回のPOHでHaskell、R、COBOLを初めて自分でコード書いたわ
Haskellは何ヶ月か前にサンプルコードそのまま打ち込んで実行してみたりはしたが
全然ルールもわかってない状態でやってたから今回が本当まじめに構文調べて書いたって感じ。RとCOBOLは今回が完全に初体験 - @neetsdkasu #@neetsdkasu
×まじめに
○てきとーに
まぁそんな真面目に入門サイト経由で覚えたわけじゃないし
リファレンスから使いたい機能や構文をピックアップして使っただけだから
Ruby等の他言語で一度解いてるから何が必要かはわかってたからね
必要だった部分最小限しか把握してないわ - @neetsdkasu #@neetsdkasu
まぁぶっちゃけPerlもRubyもPythonもC++もClojureもScalaもCもDもVB.NETもC#もそんな感じでしか使ってないけどなw
真面目になんか使ったことあるのはせいぜいJavaとPHPとJavaScriptくらいかな? - @neetsdkasu #@neetsdkasu
ああでもPHPもJavaScriptもそれらに準ずるくらい
いい加減にしか覚えてないしなあ
JavaもJava7以降の新しい機能はちょっと分からんし - @neetsdkasu #@neetsdkasu
N88BASICもQBasicもVB6もまともに使えるってわけじゃないし
結局のところ
俺はまともに扱えるプログラミング言語は1つもないって感じか
ダメじゃん俺