情報システム基礎I(スクーリング前半)
情報システム基礎Iのスクーリング前半2日間に行きました。
今回は全部で4日間の講義があり、前後半2日ずつに分かれていて、後半は2週間後です。
簡単に習ったことをまとめておきます。
1日目
1日目には全体の説明などがあり、それ以降は実際にProcessingを使って学びました。
- 科目の内容や位置付けなどの説明
- プログラムで書くことの利点と欠点(簡単なグループワーク)
- 点の描画
- 変数
- 分岐(if文)
- 論理式
- 直線の描画
2日目
2日目からは2つのグループに分かれて講義を受けます。ただ、使用している資料は同じで、進み具合もほぼ同じようでした。
- 折れ線(vertex)
- 関数
- 配列
- 乱数
- 繰り返し文(for / 少しdo while)
- 曲線の描画(スプライン曲線)
- 面(三角形、長方形、多角形)
前半は、Processingの勉強というよりもプログラミングの勉強が多めの印象で、所々で習ったことをプログラムで使う課題がありました。
そのほかに、前半と後半の間に1つ課題提出があります。 進み具合によって課題は変わるようですが、今回は1,000個の六角形を描くプログラムを作ることでした。
また、今回初めて学んだfor文の書き方がありました。
for文をで配列を取り出すとき専用の書き方で、配列の0番から要素をすべて取り出すとfor文から抜けます。
int[] size = {100, 200, 300, 400, 500}; for (int s: size) { println(s); }
この場合、コンソールには100、200、300、400、500が表示されます。
通常のfor文で書くと下記のようになります。
int[] size = {100, 200, 300, 400, 500}; for (int i = 0;i < size.length; i++) { println(size[i]); }
調べてみると、Javaでは「拡張for文」、C++では「範囲ベースfor文」と呼ばれるものでした。C#やJavascriptのforeach
と同じです。(C++でもforeachが使えますが、非推奨となっていました)
配列に対するfor文であれば短く書けるため、配列を取り扱う際に試してみようと思います。
講義の最後に作る作品のテーマもすでに決まっているため、2週間の間にアイディアを考えておこうと思います。
少し先ですが、後半のスクーリングも楽しみです。