2017-05-16 3 views
0

配列[0、1]で始まるフィボナッチシーケンスを生成しようとしています。その後の各数値は、その前に2つの数値を加算して計算されます。 //例: 0,1、[0 + 1 =] 1、[1 + 1 =] 2、[1 + 2 =] 3、[2 + 3 =] 5などである。フィボナッチシーケンスを生成し、そのサブセットを作成する

私が実装しようとしている2つの方法は以下のとおりですが、私はサブセット(GenerateSubset(params))の生成にひどく悩まされています。どんな助けも本当に感知できるでしょう。以下は

public IEnumerable<long> Generate() 
      { 
      int i, count, f1 = 0, f2 = 1, f3 = 0; 
     Console.Write("Enter the Limit : "); 
     count = int.Parse(Console.ReadLine()); 
     Console.WriteLine(f1); 
     Console.WriteLine(f2); 
     for (i = 0; i <= count; i++) 
     { 
      f3 = f1 + f2; 
      Console.WriteLine(f3); 
      f1 = f2; 
      f2 = f3; 
     } 
     Console.ReadLine(); 
    } 



public Task<IEnumerable<long>> GenerateSubset(int fromIndex, int toIndex) 
    { 
     throw new NotImplementedException(); 
    } 

私はこれらのメソッドを実装することによって合格しようとしているテストケースを含むファイルです。

Test cases file: 

[drive.google.com/open?id=0B_6Eur5JYu9_MDNfelVKOWswRGs]

+0

「GenerateSubset」とは何ですか?なぜそれは 'タスク'を返すのですか? – zerkms

+0

_「何か助けてください」_はあまりにも広すぎます。最初から完全に書かれる方法を求めているようです。これまでに試したことを明確に示す良い[mcve]と、あなたが何を問題にしているのかについての詳細で正確な説明を提供してください。 –

+0

@zerkms:GenerateSubsetは、提供されたインデックス値内でサブセットを生成するメソッドで、Generate()メソッド内に手動で配置するのではなく、フィボナッチシーケンスを生成するために使用できます。私はこのタスク[https://drive.google.com/open?id=0B_6Eur5JYu9_Y3BhZFdSbkpiWVE]を解決し、上記のファイルのようにテストケースを渡そうとしています。 – Rajesh

答えて

0

私はあなたがフィボナッチ数列のサブセットを生成するためのロジックをしたいと思います。ここで私はJavaで書くロジックです。それをC#に変換することができます。サブセットを生成

int fibonacci(int x) { 
if (x == 0) 
    return 0; 

if (x == 1) 
    return 1; 

return fibonacci(x-1)+fibonacci(x-2); 
} 

及び第二の機能は次のとおり

List<Integer> GenerateSubset(int fromIndex, int toIndex) { 
    int first=fibonacci(fromIndex); 
    int second= fibonacci(fromIndex+1); 
    int third; 
    List<Integer> result= new ArrayList<Integer>(); 
    result.add(first); 
    result.add(second); 
    for(int i= fromIndex+2;i<=toIndex-1;i++) { 
     third= first+second; 
     result.add(third); 
     first=second; 
     second=third; 
    } 

    return result; 

    } 

これはフィボナッチ数列のサブセットを含むリストを返します。

+0

コードをありがとうございます。しかし、コードとテストケースを見つけるために上記のリンクに従ってください。リンクは次のとおりです:https://drive.google.com/open?id=0B_6Eur5JYu9_MDNfelVKOWswRGsとその他のリンク: https://drive.google.com/open?id=0B_6Eur5JYu9_Y3BhZFdSbkpiWVEこれで、テストケースをコード。あなたの助けが高く評価されます。ありがとう! – Rajesh

+0

@Rajeshこのプロジェクトであなたの役割は何ですか?あなたにコードを書くように誰かに依頼することは、コーディング方法を教えてくれません。 – zerkms

関連する問題