编写一个方法计算下列级数:m(i) = 1 / 2 + 2 / 3 + ....+ i / (i+1)
编写一个测试程序显示下面的表格im(i)10.500021.1667....1916.40232017.3546我自己编写的有错误,可是我就是改不出来,希望哪位大神知道能...
编写一个测试程序显示下面的表格
i m(i)
1 0.5000
2 1.1667
....
19 16.4023
20 17.3546
我自己编写的有错误,可是我就是改不出来,希望哪位大神知道能给看看改改,要是觉得我写的比较混乱就重新写个新的呗,指导指导,万分感谢!!!!
public class Text513{ public static void main(String[] args) { System.out.println("i" + "\t" + "m(i)"); for(int i = 1; i <= 20; i++) System.out.println(i + " \t " +s(i)); } public static int s(int a ){ for(int i = 1; i <= a; i++) { int b; double result ; result +=( i*1.0)/(i+1); b = (int)(result * 10000)/10000; return b; } }
}
可是我把return b 放在外面又无法识别变量 b 。
拜托编程大神们。。急用啊! 展开
i m(i)
1 0.5000
2 1.1667
....
19 16.4023
20 17.3546
我自己编写的有错误,可是我就是改不出来,希望哪位大神知道能给看看改改,要是觉得我写的比较混乱就重新写个新的呗,指导指导,万分感谢!!!!
public class Text513{ public static void main(String[] args) { System.out.println("i" + "\t" + "m(i)"); for(int i = 1; i <= 20; i++) System.out.println(i + " \t " +s(i)); } public static int s(int a ){ for(int i = 1; i <= a; i++) { int b; double result ; result +=( i*1.0)/(i+1); b = (int)(result * 10000)/10000; return b; } }
}
可是我把return b 放在外面又无法识别变量 b 。
拜托编程大神们。。急用啊! 展开
4个回答
展开全部
import java.text.DecimalFormat;
public class Text513
{
public static void main(String[] args) {
DecimalFormat df=new DecimalFormat(".####");
df.applyPattern("0.0000");
System.out.println("i" + "\t" + "m(i)");
for(int i = 1; i <= 20; i++)
System.out.println(i + "\t" +df.format(s(i)));
}
public static double s(int a){
double result=0.0;
for(int i = 1; i <= a; i++) {
result += (i*1.0)/(i+1);
}
return result;
}
}
public class Text513
{
public static void main(String[] args) {
DecimalFormat df=new DecimalFormat(".####");
df.applyPattern("0.0000");
System.out.println("i" + "\t" + "m(i)");
for(int i = 1; i <= 20; i++)
System.out.println(i + "\t" +df.format(s(i)));
}
public static double s(int a){
double result=0.0;
for(int i = 1; i <= a; i++) {
result += (i*1.0)/(i+1);
}
return result;
}
}
展开全部
public static double s(int a ){
double result = 0 ;
for(int i = 1; i <= a; i++) {
result += ( i*1.0)/(i+1);
}
return result;
}
double result = 0 ;
for(int i = 1; i <= a; i++) {
result += ( i*1.0)/(i+1);
}
return result;
}
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
上面的两位已经给你写好了,我就说说的你的 b为什么不能识别,
首先你得明白局部变量,全局变量以及作用域。b定义在for循环体内 ,属于局部变量,作用域为for循环体内,而你的return b放在循环体外,自然就没有所对应的b变量。
首先你得明白局部变量,全局变量以及作用域。b定义在for循环体内 ,属于局部变量,作用域为for循环体内,而你的return b放在循环体外,自然就没有所对应的b变量。
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询