夏休みプチプログラミングコンテスト2018 その0

前回までのあらすじ

プログラミング歴(というか競プロ歴)が2年になったから、競プロ以外の何かやるぞ〜と思いながらTwitterを眺めていたら、プロ生ちゃんのツイートを発見した。

「簡単なソースコードを作って〜」ってことらしいので、アプリとかつくるよりハードルが低い(ように見えた)から参加してみるか〜ってなった。

8/31〆だからのんびり作っても良かったんだけど、最初に出てきた作品がしょぼい方が、後の人も気が楽かなって思って早めに提出することにした。(何回出しても良いらしいし。)

プロ生ちゃんが例としてあげてるものがどれも作れそうになかったから、とりあえず「横線のないH×Wマス計算用紙」を作ることになった。

「横線のないH×Wマス計算用紙」

ソースコード

<?php
list($h,$w) = explode(" ",trim(fgets(STDIN)));
$s = trim(fgets(STDIN));
$n = strlen($h);
echo str_repeat(" ",$n - 1) . $s;
$i = 1;
while($i <= $w){
echo "|". $i;
++$i;
}
echo PHP_EOL;

$j = 1;
while($j <= $h){
$m = strlen($j);
echo str_repeat(" ",$n - $m) . $j . str_repeat("| ",$h) . PHP_EOL;
++$j;
}
?>

説明書きのような何か

paiza.IOとかで〜って書いてあったから標準入力を受け取る形にしました。(これは罠で、この形以外の書き方を知りません。)

1行目に半角空白区切りで縦と横のサイズ、2行目に計算の種類(+-×÷のどれか)を入力すると、まあそれっぽい何かが表示されます。

入力例)

9 9

×

出力例)

f:id:Inaba3:20180724230510j:plain

 

この場合は九九の表っぽい何かが表示されました。(余談ですが、おそらくプロ生ちゃんが例としてあげた算数ドリルはもう少しまともなものを想定していたと思います。(知らんけど)(どうもクエリちゃんの方にサンプルコードが出てるみたいだけど、私にはどの言語で書かれてるのかもわからないから実行結果を見ることすらできなかった。))(ちなみに、私は100マス計算(入力の1行目が10 10)のつもりで作りましたが、出力結果が10行目までしか画面に入らなかったので、九九になりました。)

というわけで

おそらく、プロ生ちゃんとかクエリちゃんをフォローしてる人の中で、これより残念な作品を出せる人はいないと思うので、皆さん安心して参加しましょう。(あるいは、あえてこれより残念な作品を作ってみるのもありかもしれません。)

「初心者から上級者まで楽しく参加してね」byプロ生ちゃん とのことなので、残り1か月弱、楽しく参加しましょう!(私も、もう少しまともな作品を出したいので、アドバイスやら苦言やらある方は、気軽にご連絡ください。)