for进行一些简单的运算-Java板块造梦空间论坛-技术交流-造梦空间论坛

for进行一些简单的运算

计算y=1+1/x+1/x*x+1/x*x*x+1/x*x*x*x...的值,(x>1),直到最后一项小于0.0001为止

先定义xy和后面作为分母a和1/a的结果b

double x,y=1.0,a=1,b;

定义用户输入,用个无线循环加if判断用户输入的值,如果大于1就结束循环,如果小于1就重新输入

Scanner input=new Scanner(System.in);
		System.out.println("请输入x的值(x>1):");
		for (;;) {
			x=input.nextDouble();
			if (x>1) {
				break;
			}
			System.out.println("输入错误请重新输入大于1的值");
		}
		System.out.println("x="+x);

先定义个i=1然后在写个无线循环

for (double i = 1.0f;; i++) {

}

给a,b,y赋值进行运算

a=a*x;
			b=1.0/a;
			y=y+b;

最后进行判断,最后一项小于0.0001,然后退出程序

if (b<0.0001) {
				System.out.println(y);
				break;
			}

总结

//定义xy
		double x,y=1.0,a=1,b;
		//定义用户输入,用个死循环加if判断用户输入的值,如果大于1就结束循环,如果小于1就重新输入
		Scanner input=new Scanner(System.in);
		System.out.println("请输入x的值(x>1):");
		for (;;) {
			x=input.nextDouble();
			if (x>1) {
				break;
			}
			System.out.println("输入错误请重新输入大于1的值");
		}
		System.out.println("x="+x);
		//先定义个i=1然后在写个无线循环
		for (double i = 1.0f;; i++) {
			a=a*x;
			b=1.0/a;
			y=y+b;
			if (b<0.0001) {
				System.out.println(y);
				break;
			}
		}

 

请登录后发表评论

    没有回复内容

© 造梦空间论坛