ここから本文です

C言語の問題です!この問題が解けません。教えてもえると助かります。お願いします...

アバター

ID非公開さん

2020/7/712:11:34

C言語の問題です!この問題が解けません。教えてもえると助かります。お願いします!


与えられた配列ポインタにフィボナッチ数列(n_1=n_2=1,n_i=n_(i-1)+n_(i-2))を代入する関数void fib

(int *fibseq, int N)を定義し,main関数から適切に呼び出して動作を確認せよ.fibseqはフィボナッチ数列を格納する配列のポインタ,Nはfibseqの要素数(=数列の項数)である.

閲覧数:
127
回答数:
1

違反報告

ベストアンサーに選ばれた回答

プロフィール画像

カテゴリマスター

kapuseruさん

2020/7/712:31:05

30項くらいまで計算して見ました.

配列の更新方法としては.
fibseq[i] には fibs[i-1]とfibs[i-2]を足したものを格納すれば良いです.

-------------------
#include <stdio.h>
void fib(int *fibseq, int N){
fibseq[0]=1;
fibseq[1]=1;
int i;
for(i=2;i<N;i++){
fibseq[i] = fibseq[i-1] + fibseq[i-2];
}
}

int main(){
int N = 30;
int fibseq[N];
fib(fibseq, N);
int i;
for(i=0;i<N;i++){
printf("%d ", fibseq[i]);
}
printf("\n");

return 0;
}
-------------------
結果:

1 1 2 3 5 8 13 21 34 55 89 144 233 377 610 987 1597 2584 4181 6765 10946 17711 28657 46368 75025 121393 196418 317811 514229 832040

アバター

質問した人からのコメント

2020/7/7 19:03:00

回答ありがとうございます!

あわせて知りたい

みんなで作る知恵袋 悩みや疑問、なんでも気軽にきいちゃおう!

Q&Aをキーワードで検索:

Yahoo! JAPANは、回答に記載された内容の信ぴょう性、正確性を保証しておりません。
お客様自身の責任と判断で、ご利用ください。
本文はここまでです このページの先頭へ

「追加する」ボタンを押してください。

閉じる

※知恵コレクションに追加された質問は選択されたID/ニックネームのMy知恵袋で確認できます。

不適切な投稿でないことを報告しました。

閉じる