パソコンカレッジ スタッフのひとりごと

パソコンスクールのスタッフが、
初心者から上級者まで役立つ情報をお伝えします。

ある数が別の数の倍数かどうかを判定する方法

2010-11-25 09:00:10 | エクセル
今日も、生徒さんからの質問を取り上げます。

「どうしたらいいもんかねえ。」

「どうしたんですか?」

「いやあ、ねえ、こんな課題をいただいちゃってね、上司から。
それが、どうしたらいいのか分からないんだよ。」

「どんな課題ですか?」

「こんなのだよ、先生」

見せてもらうと、以下のような課題でした。



「なるほど、基準値と実測値という2つの数値があって、実測値が基準値の倍数かどうかを判定しろってことだね。」

「そんなことできるんかいね。」

「一緒に考えてみましょう。まず、明らかにしたいのは、倍数とは、どういうことなのかということですよ。」

「?? そうだね。う~~ん。そうだ、基準値に2とか3とか10とかを掛けた数のことだね。」

「そうですよね、でも、18を掛けたかもしれないし、100かもしれません。」

「ふ~~ん、そうか!分かったぞ。基準値で割り切れればいいんだ!」

「その通りです。お見事。実測値を基準値で割って、余りが0なら、倍数です。」

「余りを求めるにはどうしたらいいのかい?」

「関数を使います。MODという関数です。試しにC列11行目に余りを求めてみましょう。」

「ほう、余りは、1.2だね。」




ここまで解れば、あとは簡単。C11の答えが、0ならば、倍数なので、結果は、○。
0以外ならば、割り切れないので、結果は、×。
これは、IF関数を使えばいいですね。

はい、できました。




めでたしめでたし、と、これで終わらないのが、今回のネタなのです。

基準値を、1.4に変更してみてください。
4.2 は、1.4 で割り切れるので、答えは0のはずですが、変な答えが出ています。

結果も、×になっていますね。



整数同士の割り算なら、こんな現象は起きませんが、実数となると、こんなことも起きるのです。こわいですね。

さあ、どうしたらいいでしょうか。

そうです。整数にしちゃえばいいのです。

今回は、小数点以下1桁なので、基準値と実測値を10倍してしまいます。
こうすれば、整数同士だから、きちんと答えが出ます。

結果も、ほら、ちゃんと○になったでしょ。
めでたし、めでたし。





だい

コメント (3)    この記事についてブログを書く
  • Twitterでシェアする
  • Facebookでシェアする
  • はてなブックマークに追加する
  • LINEでシェアする
« アイコンキャッシュがない?... | トップ | 今週のおすすめ記事 »
最新の画像もっと見る

3 コメント

コメント日が  古い順  |   新しい順
エクセル (天の人(流雲))
2010-11-25 16:51:38
う~ん・・・なるほどね(100%解りきっていませんが(汗

エクセルを100%使いこなせれば、鬼に金棒ですよね。

しかし私は「エクセル」の数パーセントしか解りません、真実情けないですね。

天の人(流雲)さんへ (だい)
2010-11-26 12:34:59
エクセルを100%使いこなせている人なんて、どこにいるんだろう、って思いますよ。
僕らも、毎日が勉強です。
少しでも、お役に立てることがあれば、幸いです。
また、来てくださいね。
素晴らしい!! (はな)
2020-02-03 17:14:32
Excelにも計算誤差があると知って愕然としていました。でも10倍しちゃえばいいと知り、問題も解決しました!!本当にありがとうございました!!

コメントを投稿

エクセル」カテゴリの最新記事