ログインしてさらにmixiを楽しもう

コメントを投稿して情報交換!
更新通知を受け取って、最新情報をゲット!

Excel(エクセル)活用コミュのワークシート

  • mixiチェック
  • このエントリーをはてなブックマークに追加
次のワークシートの説明とワークシートから(1)〜(9)までの回答について教えてください。
回答あってますか?
わかる方、教えてください。

[ワークシートの説明]
1 セルA1に格納されている整数(2〜99の範囲)が素数かどうかを判定するワークシートである。

2 セルA3〜A100には2〜99の連番が格納されている。したがってセルA3には2?を入力し、セルA4に式(1)を入力した後に、セルA5〜A100に複写する。

3 B列は、対応するA列の値がセルA1の値の約数ならば(2)、そうでなければ(3)にしている。したがってセルB3に式(4)の入力して、セルB4〜B100に複写する。

4 セルA1の値が素数の時は”素数”、素数でないときは”素数ではない”とセルD1に表示する。セルC1にはB列の値の合計を算出している。この式は(5)となる。ところで、この値はセルA1の値の約数(ただし1を除く)の(6)であるから、C1の値が(7)であれば素数であり、(8)出ないときは素数でないと判定できる。したがって、この判定をセルD1で行うためには、セルD1の式を(9)とすればよい。

[ワークシート]
      A    B      C    D
1     12          5  素数でない
2     約数  約数の判定       
3     2    1
4     3    1
5     4    1
6     5    0
7     6    1
8     7    0 
9     8    0
10    9    0
11   10    0 
12   11    0
13   12    1
14   13    0 
・     ・    ・
・     ・    ・
・     ・    ・
99   98    0
100  99    0


(1) =A3+1
(2) 1
(3) 0
(4) =IF( MOD(A$1, A3)=0,1,0)
(5) =SUM(B3:B100)
(6) 数
(7) 1
(8) 1
(9) =IF(C1=1,"素数","素数でない")

(4)→ほかの式は考えられますか?


コメント(5)

他にも考えてみました。

=NOT(MOD(A$1,A3))*1
=(GCD(A$1,A3)=A3)*1
=(LCM(A$1,A3)=A$1)*1
=(INT(A$1/A3)=A$1/A3)*1
=(INT(A$1/A3)*A3=A$1)*1

など考えたらきりがないかなぁ。
ちょっとトリッキーですかね。
問題の4辺り間違ってない???
C1にB列の値の合計でSUM(B3:B100)なら常に一定でSUM(B:B)になるじゃないか。
A1の約数にするためにはA3からA列のA1に書いてある数+3まで足さないと。いや、それでも約数の合計にはならんな。
そもそもトピ主様、[ワークシート]が正しいと、どうやってもC1の値で素数の判定できんだろ。
素数って何?
2素数
3素数
4素数ではない
5素数
6素数ではない
でしょ?
んおおおおおおおおおおお・・・・・・・・・
意味が分かった。

BはA1がAXで割り切れたかって判定か。
SUM(B:B)を約数の合計にするためには割り切れた時に1にする。手元にエクセルが無いが12÷99は0余12か。

IF(MOD(A$1,A3)=0,1,0)はIF(MOD(A$1,A3),0,1)の方が計算が早い。理由はブーリアン型変数について調べよ。

SUM(B3:B100) はこれでも良いが「じゃあ今度は200」と言われる事を想定してSUM(B:B)が良いな。念のため言うが手元にエクセルがないのでエラーかもしれん。

>(4)→ほかの式は考えられますか?
そんな事を言っている場合ではない!
(9)=IF(C1-1,"素数でない","素数")

ログインすると、みんなのコメントがもっと見れるよ

mixiユーザー
ログインしてコメントしよう!

Excel(エクセル)活用 更新情報

Excel(エクセル)活用のメンバーはこんなコミュニティにも参加しています

星印の数は、共通して参加しているメンバーが多いほど増えます。