空调电路原理图:求一java小程序。

来源:百度文库 编辑:查人人中国名人网 时间:2024/05/06 04:25:37
本人初学java,望求一小程序拿来参考。程序要求如下:
用递归算法,要求用户输入一个参数”n“,回车后可以计算出“1+1/2-1/3+1/4-1/5+...-1/(n-1)+1/n“的值。

import java.io.*;
import java.math.BigDecimal;

class abc
{
public static void main(String args[]) throws IOException
{
System.out.println("Enter a number:");
BufferedReader readin=new BufferedReader(new InputStreamReader(System.in));
String aa=readin.readLine();
//System.out.println(aa);

BigDecimal result=new BigDecimal(1);
for(int i=1;i<Integer.parseInt(aa);i++)
{

//System.out.println("1%2="+1%2);
if (i%2!=0)
{
//System.out.println("i="+i);
int j=i+1;
String a_number=String.valueOf(1);
String b_number=String.valueOf(j);
String c_number=String.valueOf(result);
BigDecimal a=new BigDecimal(a_number);
BigDecimal b=new BigDecimal(b_number);
BigDecimal c=new BigDecimal(c_number);
try
{
BigDecimal bigRes=a.divide(b,20,a.ROUND_HALF_EVEN);
result=c.add(bigRes);
//System.out.println("result1="+result.toString());
}
catch(ArithmeticException e1)
{
System.out.println(e1.getMessage());
}
}
else
{
//System.out.println("i="+i);
String a_number=String.valueOf(1);
String b_number=String.valueOf(i+1);
String c_number=String.valueOf(result);
BigDecimal a=new BigDecimal(a_number);
BigDecimal b=new BigDecimal(b_number);
BigDecimal c=new BigDecimal(c_number);
try
{
BigDecimal bigRes=a.divide(b,20,a.ROUND_HALF_EVEN);
result=result.subtract(bigRes);
//System.out.println("aaaa="+bigRes.toString());
//System.out.println("result2="+result.toString());
}
catch(ArithmeticException e2)
{
System.out.println(e2.getMessage());
}
//result=result-(1/(i+1));
//System.out.println("a="+result);
//System.out.println("b="+(1/(i+1)));
//System.out.println("result2="+result);
}
}
System.out.println(result.toString());
}
}

给你求这个的递归算法,从键盘输入你自己弄八
public class MethodsTest {
public static void main(String[] args) {
System.out.print(method(5));
}

private static double method(int n) {
if (n == 1) {
return 1;
} else if (n % 2 == 0) {
return (method(n - 1) + 1 / (double) n);
} else {
return (method(n - 1) - 1 / (double) n);
}
}
}