2017-09-12 2 views
-2

シリーズの中:1/3 + 3/5 + 5/7 + 7/9 + 9/11 + ...... ...#/ nth、 ユーザーが5を入力すると1/3 + 3/5を計算し、5がユーザーが入力した最後の項を計算するなど、シリーズの分母をn番目にしようとしています。私は5のような用語の数を計算するコードを1/3 + 3/5 + 5/7 + 7/9 + 9/11の5項を計算するようにしました。 ここに私のコードです:最後の項がJavaのユーザ入力の分母である系列を合計する方法

import java.util.Scanner; 
public class n01092281 
{ 
//for loop that computes a sum of the series 
    public static void main(String[] args) { 
     Scanner input = new Scanner(System.in); 
     System.out.println("Enter your nth term for the series."); 
     double userInput = input.nextInt(); 
     double sum = 0.0; 
     for(int i = 2; i <= userInput*2; i+=2) { 
     sum += ((double)(i-1)/(i+1)); 
     } 
    } 
} 
+0

質問 – digidude

+0

すべての整数の合計は「-1/12」、真のストーリーです。 – corsiKa

+0

@JoeCタイトル – fgdark

答えて

0

あなたのforループ条件に問題があります。 userInput*2回ループしています。 2でそれを減算し、iから1に初期化します。これは、系列が分子として1で始まるためです。 {+ =(double)の和(I/I + 2);} ユーザ入力は、あなたの所与奇数であると予想されるが(; I <=ユーザ入力-2 I + = 2、I = 1 INT)ため

import java.util.Scanner; 

public class n01092281 { 
    //for loop that computes a sum of the series 
    public static void main(String[] args) { 
     Scanner input = new Scanner(System.in); 
     System.out.println("Enter your nth term for the series."); 
     double userInput = input.nextInt(); 
     double sum = 0.0; 
     for (double i = 1; i <= userInput - 2; i += 2) { 
      sum += (i/(i + 2)); 
     } 
     System.out.println(sum); 
    } 
} 
関連する問題