文章目录[隐藏]
计算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;double x,y=1.0,a=1,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);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);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++) {}for (double i = 1.0f;; i++) { }for (double i = 1.0f;; i++) { }
给a,b,y赋值进行运算
a=a*x;b=1.0/a;y=y+b;a=a*x; b=1.0/a; y=y+b;a=a*x; b=1.0/a; y=y+b;
最后进行判断,最后一项小于0.0001,然后退出程序
if (b<0.0001) {System.out.println(y);break;}if (b<0.0001) { System.out.println(y); break; }if (b<0.0001) { System.out.println(y); break; }
总结
//定义xydouble 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;}}//定义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; } }//定义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; } }
没有回复内容