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;
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; }

总结

//定义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;
      }
    }
//定义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; } }

 

请登录后发表评论

    没有回复内容

© 造梦空间论坛
❤富强❤