

int fib(int k) {
if(k==0) return 0;
if(k==1) return 1;
return fib(k-1)+fib(k-2);
}
問1.fib(6)の値を示せ
問2.この関数で再帰呼び出しを行なっている箇所について、再帰呼び出しのかわりにfor文を使って書き直せ。つまり、入力nを与えた時fib(n)と同じ出力が得られる別の関数をfor文を使って書け。但し、必要があれば関数内の局所変数を自由に定義しても良い。for文使った関数の名前は上と同じ関数名fibを用いて関数全体の処理を解答すること。
解答をお願い致します。
No.1ベストアンサー
- 回答日時:
問1.fib(6)の値を示せ:
定義的にフィボナッチ数列は
0、1、1、2、3、5、8.....
と続いていくので、6番目は8。
問2.この関数で再帰呼び出しを行なっている箇所について、再帰呼び出しのかわりにfor文を使って書き直せ。つまり、入力nを与えた時fib(n)と同じ出力が得られる別の関数をfor文を使って書け。但し、必要があれば関数内の局所変数を自由に定義しても良い。for文使った関数の名前は上と同じ関数名fibを用いて関数全体の処理を解答すること。:
int fib(int k) {
int a = 0, b = 1, tmp;
for (int i = 0; i != k; i++) {
tmp = a;
a = b;
b = tmp + b;
}
return a;
}
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
long型の定数の末尾にLを付ける...
-
【#define】 defineで定義した...
-
C++/CLIでネイティブの構造体を...
-
Arduinoのプログラムについて
-
C#でオセロを作っているのです...
-
64bit → 32bit型へのキャスト
-
構造体の要素すべてに対する四...
-
DWORDの実際の型は何でしょうか
-
C++でboolにintの値を代入する...
-
最早開始時間と最遅完了時刻を...
-
【C++】関数ポインタの使い方
-
既定のコンストラクタがありま...
-
Aの値からBの値を除するとは??
-
「Aに対するBの割合」と「Aに対...
-
信頼区間の1.96や1.65ってどこ...
-
a^2の√=a が成り立たない場合
-
VB6.0での小数点の扱いについて
-
配列をnビットシフトする
-
数学 一次関数 関数 y=-3/4x+k(...
-
c languageで 簡単な質問があ...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
main.c:7:43: warning: implici...
-
long型の定数の末尾にLを付ける...
-
DWORDの実際の型は何でしょうか
-
visualstudio C# テキストボッ...
-
2重定義って??
-
C++のfor文について
-
変数の型を定義しなかった場合...
-
ハンドルされていない例外が発...
-
intとINTの違いは?
-
C++でboolにintの値を代入する...
-
構造体の要素すべてに対する四...
-
プログラムの中で別のmainを呼...
-
エラー「invalid conversion fr...
-
GCCで暗黙の型変換の警告を出し...
-
【#define】 defineで定義した...
-
sshdログの意味
-
DDVによるメッセージの変更
-
typedef enumの使い方を教えて...
-
構造体を生成時にわざわざ初期...
-
DLLでLIBファイルが作成されない
おすすめ情報