プログラミングを使って算数に関する問題を解いていきます。
今回は、倍数の個数を求めていきます。条件分岐のいい練習になります。
問題
①整数1~1000の中で、3の倍数または5の倍数である数は全部で何個か求めよ。
②整数1~1000の中で、3の倍数または5の倍数であり、かつ3と5の公倍数でない数は全部で何個か求めよ。
以上の2問を、プログラミング(Scratchなど)を使って解いてみましょう。
繰り返し処理と、条件判定を上手につかうと求められます。
解説
以下の動画で解説しております。ぜひ問題に挑戦した後にご覧ください。
ポイント解説
ここでは、問題を解くうえで重要なポイントのみ解説します。詳しい解説は動画をご覧下さい。
ポイント1:倍数の判定方法
まずは、3の倍数かどうかを判定する方法を考えましょう。
Scratchには「3の倍数かどうか」を調べるブロックはありません。なので、存在するブロックを組み合わせることで、判定するためのプログラムを作ります。
3の倍数とは、どういう数字でしょうか。3 , 6 , 9 , 12 , 15 ,・・・これらの数はすべて3で割り切れます。3で割り切れるということは、3で割ったときの余りが0ということです。つまり
このようなブロックで調べることができます。
5の倍数の場合は、割る数を5にするだけですね。
条件を判定するためのブロックができたら、あとは条件を満たす数を数えるだけですね!
ポイント2:「または」と「かつ」
①では「 3の倍数または5の倍数 」、②では「 3の倍数または5の倍数であり、かつ3と5の公倍数でない数 」という文章問題になっています。ここで、「または」と「かつ」という言葉の意味を正確に読み解くことができないと、問題を解くことはできません。
例えば、「3の倍数または5の倍数の数」と「3の倍数かつ5の倍数の数」の違い。
「または」の場合は3の倍数という条件を満たさなくても5の倍数の条件を満たす数であればOKです。「かつ」の場合は3の倍数でもあり、5の倍数でもある数のみOKとなります。
詳しくは動画内で説明しています。