作文:私の高校生活
<はじめ>
私の高校生活では専門科目のプログラムを頑張りました。特に二年生での自由課題二つは力を入れました。
<なか1>
私は中学生のことvbsを友達と一緒に遊びで書いたりして遊んでいたのでプログラムには自信がありました。
高校に入ってからはc言語を学び始めましたがそれも得意でクラスメイト達より早く完成させていました。
二年生の中盤に一人でc言語を使ってアプリを作る自由課題がありました。
自由課題をやると聞いてすぐに思いついたのがテトリスです。
テトリスは一年生のころに家でJavaScriptを使って作っていたので一か月くらいしかない時間の中でも作れると思ったからです。
ですが先生からは時間が足りないからダメだと言われて結局ハイアンドローを作ることにしました。
中身は二日程度で完成し、先生に完成したことを言うともっとデザインを凝って見やすくしろと言われたので周りの人に聞いたりなどして自分なりに完璧まで仕上げました。
それでも時間が余ったので友達のプログラムで詰まったりしている人の手助けをしてアドバイスをしていました。
成績に反映されるかはわかりませんが友達が困っているのにほっとけなかったからです。
<なか2>
そして、二年生の後半には先生が決めた二人ペアで共同でプログラムを作るとゆうのをやりました。
その時クラス40人の中から10人プログラムが上手い上位勢が選ばれました。二年生中盤で作ったプログラムを見て選ばれたので僕は上位勢に入っていました。
そこでテトリスを作ることになったのですが先生が普通のテトリスだと面白くないと言い、違う要素を取り入れるように言いました。
そこで思いついたのが特定の条件下でスキルが使えるようになりスキルを使うと戦況が有利になるといったものです。
上手く調節すればテトリスをあまりしたことがない人でも楽しめるものになると思ったのです。
しかし先生に却下されました。そして先生が言った言葉がテトリスのAI対戦を作れというものでした。
ペアの人と話し合った結果、相手がテトリスのプレイヤー部分を作り私がAIを作ることになりました。
普通に考えて基礎しか教えられてないただの高校二年生が作れるものではないと最初は思いました。
ネットで調べてもc言語でテトリスのAIを作ってる人はいなくどうしようかと考えているときにこのような言葉を見つけました
「AIを作りたかったら自分がやっていることをコードにすればいい」
この言葉を見たときにそうか!とひらめきました。
そこで私はようやくコードを書き始めました。
まずはテトリスの核となるマップやテトリミノなどをうまく表示するところから書き始めAIがじどうでミノを動かすところまではすぐにできました。
どのようにAIを作ろうか考えたときに思いついたのが一度すべてのおける場所に置きポイントを付けてそこに落とすとゆうものでした。
あまりif文は使いたくなかったですが仕方なくやりました。
ポイントを付けるところでミスっていてたまに変なところに置いていましたが完成したころにはしっかり動いて形になっていました。
Aiが完成していざペアのプレイヤー部分と合わせようと思ったとき相手のコードを見ると一部想像していたのと違うのができていてAiとの組み合わせができなかったのです。
組み合わせようとするとプレイヤーの操作部分を大幅に変更し書き換えないといけないため時間がなく合わせれなかったです。
そこで提出ギリギリで一人用プレイとAIのプレイを見るモードを作り、提出しました。
幸い一人用プレイはペアの方がモードをたくさん作っていたのでアプリとしてはよかったのですが対戦が作れなかったのが残念でとても後悔が残りました。
この自由課題は作れたものをクラスの前で発表してクラスの人たちが評価するとゆうものでした。
そしてその評価された点数を二人のプログラムの
私はクラスの中で嫌われているので評価がすごく落ちました。
この評価方法の悪いところはいいプログラムを作ってもそんなに良くないプログラムを作ってもクラスで人気があるかどうかによって評価が決まる点です。
プログラムの評価があまり影響しないのです。
そのせいで評価は高くなく、個人順位は29/40に終わりました。
私はこの結果に納得していません。
何日も徹夜して頑張って作ったのに全く評価されなかったのです。
<おわり>
私の高校生活はほとんどプログラムでした。
プログラムは楽しかったですが二年生の最後が原因でプログラムのモチベがほとんどなくなりプログラムをすることが減りました。
先生も嫌いになり学校にもあまり行かなくなって成績も落ちました。
就職も斡旋できないと言われもう高校生活は終わってるも同然です。
最後のほうはちょっと私の愚痴になってしまい申し訳ありません。
最後までお読みいただきありがとうございます。