小学生でも出来る!C++プログラム #07
はおっ(0^∀^)ノ 。渚です。
プログラムしか書けない私たちですが、この度は同人界隈向けに、 なんとなくこんな風に作ってるよーというのを発信すべく、 定期的にブログで紹介してみようかということになりました。 この記事はそんな連載の第14回です。
ということで,渚からは「小学生でも出来る!C++プログラム」 を紹介していこうと思います。
関連ブログ
- #1 小学生でも出来る!C++プログラム「C++って何?」
- #2 小学生でも出来る!C++プログラム「開発ツールを手に入れよう!」
- #3 小学生でも出来る!C++プログラム「表示してみよう!」
- #4 小学生でも出来る!C++プログラム「変数って何?」
- #5 小学生でも出来る!C++プログラム「if文って何?」
- #6 小学生でも出来る!C++プログラム「if文を使おう!」
- #7 小学生でも出来る!C++プログラム「for文って何?」
目次
- 「for文って何?」
- くりかえすということ
- for文の基本の書き方
人物紹介
渚:プログラムを教えてくれる先生
ココ:いんたーねっとって聞いたことがあります!
マナブ:将来はゲームプログラマーになりたいな!
くりかえすということ
渚>for文で出来ることは,くりかえし処理です。
ココ>くりかえし?
渚>そうです!
渚>例えば,3回まわって,ワン!っていうとき,今までだと・・・
std::cout << "1回まわった" << std::endl; std::cout << "2回まわった" << std::endl; std::cout << "3回まわった" << std::endl; std::cout << "ワン!" << std::endl;
渚>と,書く必要があるのですが,これが99回まわってワン!ってなったら
・・・・
渚>まぁ,書きたくないですよね。
ココ>たしかに・・・そうですね。
渚>こういう,くりかえし何かをするときに,for文を使います!
for文の基本の書き方
渚>基本的には,こんな風に書きます。
渚>宣言で,iに0を入れています。 渚>条件判定では,iが5より小さいかを判定しています。 渚>iが5より小さい場合は,何かしらの処理を実行します。 渚>処理が終わったら,iに1を足します。
渚>for文は,こういう処理をしています。
渚>では,処理の流れの具体例を見てみましょう。
渚>3回まわってワン!の例だと,こんな感じになります。
渚>for文の概要がなんとなくわかってきたと思います。
ココ>くりかえす!って感じが分かりました!
渚>では,for文の色々な書き方を見てみましょう!
for文の特殊な書き方
渚>for文は,「宣言」部分と「条件判定」部分と「計算」部分と「処理」部分に分かれます。
渚>そして,これら4つの部分は,何も書かないということができます。 例えば,こんな感じ。(※実践は,全部読んでからにしてください!)
for(;;)
{
}
渚>これは,「宣言」しない!,「判定」もしない!,「計算」もしない!,「処理」もしない! という書き方ですが,処理もしないと意味がないので・・・
for(;;) { std::cout << "無限にくりかえす"; }
渚>通常,処理には何か書きます。
マナブ>あっ!無限ループ!
渚>そうです。この書き方のことを,無限ループと言います。
渚>for文は,「条件判定」が間違っているとき(偽の時),処理をせずにfor文を抜けます。
渚>またfor文は,「条件判定」に何も書いていない時は,合っている(真である)という処理になっています。
渚>そのため,for文から抜けなくなり,無限にくりかえします。
ココ>えっ!そうなると,終了できなくなるんじゃ・・・
渚>その通りです!だから,無限ループのプログラムを書くときは,必ず無限ループから抜ける方法を書いてから実行します!
int count = 0; int sec = 0; for(;;) { count++; if(count >= 1000) { sec++; count -= 1000; system("cls"); std::cout << sec << std::endl; if(sec >= 10) { break; } } }
渚>上のプログラムの「break」が,for文から抜ける方法になります。
渚>ちなみに,時間を図る場合は,上みたいな適当プログラムじゃなくて,std::chronoとか使いましょう。
渚>ざっくりとfor文について説明しました!あとは使って,学びましょう!
そのた
渚>for文以外の書き方の例と,使い分けについて。
次回
構造体について学ぼう
---フリー素材提供-------------------------------------- [ジュエルセイバーFREE] URL:http://www.jewel-s.jp/