在Java中带有分数的系列

问题描述 投票:1回答:3

Refer 4th series for better clarification我需要使用循环来查找以下系列的总和(2/3)-(4/5)+(6/7)-(8/9)+ ......±n

我仅对此程序使用for循环。请参阅代码以查看完成的操作。

import java.util.Scanner;
public class P64
{
    public static void main(String args[])
    {
        Scanner sc=new Scanner(System.in);
        System.out.println("Enter the limit");
        double n=sc.nextDouble();
        double sum=0;
        for(double i=1;i<=n;i++)
        {
            if(i%2==0)
            sum=sum-(++i/i++);
            else
            sum=sum+(++i/i++);
        }
            System.out.println(sum);
    }
}

我已经尝试过了,但是输出是1或0。请耐心等待,并帮助我完成作业。我仍然14岁,请耐心等待。

java fractions
3个回答
2
投票

我将为交替的+-使用一个变量,并在每次迭代时执行两个步骤:

public static void main(String args[]) {
    Scanner sc = new Scanner(System.in);
    System.out.println("Enter the limit");
    double n = sc.nextDouble();
    double sum = 0;
    int sign = 1;
    for (double i = 2; i <= n; i = i+2 ) {
        sum = sum + (sign * (i/(i+1)));
        sign = -sign;
    }
    System.out.println(sum);
}

1
投票

我删除了前增加/后增加技巧,使限制决定了合计的项数。

import java.util.Scanner;
public class P64
{
    public static void main(String args[])
    {
        Scanner sc=new Scanner(System.in);
        System.out.println("Enter the limit");
        double n=sc.nextDouble();
        double sum=0;
        for(double i=1;i<=n;i++)
        {
            double delta = (2*i)/(2*i+1);
            if(i%2==0)
                sum -= delta;
            else
                sum += delta;
        }
        System.out.println(sum);
    }
}

1
投票

您应该为值使用单独的变量,就像在循环中使用相同的变量一样,您的序列将使其变得复杂,因此,请尝试以下操作:

public static void main(String[] args){
    Scanner sc=new Scanner(System.in);
    System.out.println("Enter the limit");
    double n=sc.nextDouble();
    double sum=0;
    double j=1;
    for(double i=1;i<=n;i++)
    {
        if(i%2==0)
            sum=sum-(++j/++j);
        else
            sum=sum+(++j/++j);
    }
    System.out.println(sum);
}
Input: 4
Output: -0.16507936507936516
© www.soinside.com 2019 - 2024. All rights reserved.