プログラミング入門してきた。
Aizu Online Judgeとは
オンラインジャッジは、提出されたプログラムの正しさとその効率の自動判定を行うWEBサービスです。 たくさんの問題が収録されており、24時間自由に自分のペースでプログラミングを学ぶことができます。
今回ずっと解いていたのは、コースページの一番最初のところ。
Hello worldから始まって、配列や文字列、数学関数ときて構造体まで一通り学べるようになっている。
ちなみに入門だけで44問ある。
- 入門
- 条件分岐
- 繰り返し処理
- 計算
- 構造化プログラムI
- 配列
- 構造化プログラムII
- 文字
- 文字列
- 数学関数
- 構造体とクラス
なんでプログラミング入門したの
なんでっていうと特別すごい理由はないけれど、「実務でふんわり使っただけで基礎わかってない」という気持ちがあったので、パズルを解く感覚で知りたかった。
しかし入門と侮るなかれ、数学関数は高校数学で習った(はずの内容だが全く覚えていない)ので復習する必要があった。
なお数学アレルギーのある人は、この本で抵抗をなくすと良い。
数学に関する復習は、コグニカルでかなり賄える。このサイトが学生時代にあれば……(あってもやってなさそう)
このサイトよいな。
— VTRyo (@3s_hv) 2021年9月23日
説明が理解できない場合、この概念を理解できてないんじゃない?ってリンクがある。
ページのトップでもツリーがあって、一個ずつ前にもどれるようになってるhttps://t.co/hIErs7sFR8 pic.twitter.com/nihGNrcrbh
最初はただコードを書くだけ書いて進めていたのだけど、途中から「せっかくだし草生やそ」と思ってGithubに上げだした。人に見せるようなキレイな代物ではないけど、興味があったら覗いてみてね。
自分が数年後に見た時に「うわこの頃のコード汚ね〜」と笑うために残してると言っても良い。
成果は後になって実感することになりそう
数学パズルみたいな問題が多いとは思うけれど、「配列を駆使するだけで結構データ加工っていけるんだな」とか「こうやって考えれば処理できるのね」とか「このデータ数なら全探索でおk」みたいな、そういうセンスが養われていった。
そもそも1〜2年くらい前まで「配列ってなんですか」みたいなこと言ってたので、こういうのはやっておいて損がない。
これを完走することでパーフェクトプログラミングマンになるとかではもちろんなくて、これを土台にいろいろ考えていこうな!っていうセンスの下地が鍛えられるイメージ。
そう、これは入門なのである
おわりに
Aizu Online Judgeはプログラミング入門コースの他に、アルゴリズムや計算機何学などなどいろんなコースがあるので、時間があるときに進めようと思う