dポイントプレゼントキャンペーン実施中!

漸化式のプログラミングについて
再帰を用いずに漸化式を完成させよという問題です。

過去に作ったのですが改めてみると「ちよっとなにいってるのかわからない」です。func関数の中身がなぜこんなにごちゃごちゃしているのが教えてください。

int func(int n) {

    int a, b = 2, c = 1, i;

    for (i = 1;i < n;i++) {

        a = 4 * b - c;

        c = b;

        b = a;

    }

    return a;

}



int main(void) {

    int n = 5;

    int i = 5;

    for (i = 2;i <= n;i++)

        printf("%d\n", func(i));

    return 0;

}

A 回答 (2件)

変数の名前をa,b,cなんて安直にやってしまったのが失敗ですね。


a → x_3
b → x_2
c → x_1

と変えたら、ちょっとはわかるのでは?
    • good
    • 1

難しいね!

    • good
    • 1

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!