こんにちは。大学の課題で手詰まりになったので質問させていただきます。
問題内容は「整数aとbを入力して、aからbまでの和Sを求めるプログラム。ただし、整数mとn(
n≥m)を引数、mからnまでの和を戻り値とする再帰関数sumofを定義して利用すること。」です。
プログラムもうまくいきませんし、2つの値を使うのがうまくできません。(1つの値から0までならできました。)
よろしくお願いします。
C言語 再帰関数 総和問題
Re: C言語 再帰関数 総和問題
m<nのとき、「mからnまでの和」は、「m+(m+1からnまでの和)」と表すことができます。
m=nのとき、「mからnまでの和」はmです。
sumof関数の実装は、これをプログラムにすればいいでしょう。
さらに、sumof関数を呼び出すため、main関数のscanfの呼び出しとprintfの呼び出しの間に、 を追加するといいでしょう。
(a, bとm, nの対応関係に注意)
m=nのとき、「mからnまでの和」はmです。
sumof関数の実装は、これをプログラムにすればいいでしょう。
さらに、sumof関数を呼び出すため、main関数のscanfの呼び出しとprintfの呼び出しの間に、 を追加するといいでしょう。
(a, bとm, nの対応関係に注意)
複雑な問題?マシンの性能を上げてOpenMPで殴ればいい!(死亡フラグ)
Re: C言語 再帰関数 総和問題
>1つの値から0までならできました。
であれば、nの総和からmの総和を引くという方法もあります。
無駄も多いし、求められている解ではないですが、まあそんなのもあるということで。
であれば、nの総和からmの総和を引くという方法もあります。
無駄も多いし、求められている解ではないですが、まあそんなのもあるということで。
Re: C言語 再帰関数 総和問題
参照魚さん
なるほど。
その考え方なら確かにできたかもですね。。
自分の力に合わせて考えてくださりありがとうございます!
なるほど。
その考え方なら確かにできたかもですね。。
自分の力に合わせて考えてくださりありがとうございます!