- ベストアンサー
アルゴリズムに詳しい方、本当にお願いします
変数、代入『←』、判定『≦』、和演算『+』、積演算『×』を使い、1から10までの整数の積を求めるアルゴリズムを作成しなさい。という問題がいまいち分かりません。作成例は画像のように手順4まで中でつくれ、というものです。okwaveの回答者さんたちには大変お世話になっています。いつもありがとうございます。お願いいたします。
- みんなの回答 (2)
- 専門家の回答
質問者が選んだベストアンサー
エクセルで 作成例の、結果を エミュレートした、ものを 作りました https://1drv.ms/x/s!AjviygfJDgV_1QE1827VmJP5LOvR ご覧、頂ければ 判りますが デタラメです ので 此の、例は 忘れて、ください あと、 有料講座なら 詐欺で、訴えて 良い、レベルです ご考慮、ください 例の、検証から して、みましょう n i 不定 不定 n←0 i←1 0 1 n+1 i+1 1 2 n+1 i+1 2 3 n+1 i+1 3 4 n+1 i+1 4 5 n+1 i+1 6 7 (中略) n+1 i+1 48 49 n+1 i+1 49 50 n+1 i+1 50 51 終了 と、まあ 1~50の、総和が 50や、51に、 等は、なりません から 誤りだ と、判ります 正しくは n i 不定 不定 n←0 i←1 0 1 n+i i+1 1 2 n+i i+1 3 3 n+i i+1 6 4 n+i i+1 10 5 n+i i+1 15 6 (中略) n+i i+1 1128 48 n+i i+1 1176 49 n+i i+1 1225 50 n+i i+1 1275 51 終了 ですね 詳細の、経過は エクセルシートを ご覧、ください 所で ステップ数の、指定が 無いなら ループさせる、必要は ありません iを、1と し 其の後 +1、しまくって 10まで.増やす すると iは、1~10へと 合間無く、変化します 其の、各々の 全てを 中間値を、取りつつ かけて、いけば 良い の、ですよね? そうですね~ まぁ、仮に 中間値は nに、でも 保存すれば、良い で、しょう 此処で、問題 なのは 最初の、値 ですが 素の、値 と、言いますか 足し算では、0、 かけ算では、1、 ですね どういう事か と、いうと かけ算で 初期値を、0に して、しまうと 其の、後 何を、掛けても 0の、ままに なり 希望の、動作結果に なりません 他方で 1だと 上手く、行きます では やって、みましょう 少し、丁寧にね n i n←1 1 不定 l←1 1 1 n ←n×i 1 1 i←i+1 1 2 n ←n×i 2 2 i←i+1 2 3 n ←n×i 6 3 i←i+1 6 4 n ←n×i 24 4 i←i+1 24 5 n ←n×i 120 5 i←i+1 120 6 n ←n×i 720 6 i←i+1 720 7 n ←n×i 5040 7 i←i+1 5040 8 n ←n×i 40320 8 i←i+1 40320 9 n ←n×i 362880 9 i←i+1 362880 10 n ←n×i 3628800 10 i←i+1 3628800 終了 さてさて 何故、ループさせる の、でしたっけ? 繰り返しが 冗長に、なるから でしたよね? 今のを、見ると n ←n×i i←i+1 ばかりが 繰り返されてます ので、此を ループに、すれば 良い ので、しょうね さぁ、後は ご自身で、ループに してみて、くださいね (まぁ、しなくても答えですが) 追記 エクセルの、内容を よくよく、見ると 変化が、見える と、思いますょ 式も 確認して、おいて くださいね
その他の回答 (1)
- FEX2053
- ベストアンサー率37% (7991/21371)
物凄く簡単な問題なんですが・・・全く分からないと すると、これから先の問題はすべてわからないかと。 算数でいえば、5+6がわからない・・・近いです。 手順1:n←1,i←1 手順2:i≦10であるあいだ、手順3,4を繰り返す 手順3:n←n×i 手順4:I←i+1 回答例を一部直すだけでできちゃいますね。 さて、これをどうやって説明するか、それを考える方が (あまりに自明すぎて)かなり難しいです。
補足
おそらくですが、手順4のIってiのことですよね? うち間違えですか?
お礼
分かりやすく教えて下さりありがとうございます!
補足
Iとありますが、iの間違いですか?