分别输入两个数double a,b;
r = b - count * a ;
求count为几的时候,r=1.0;
例如,double a = 1.3;
double b = 3.9;
那么,count = 3
import java.util.Scanner;
public class Exg {
public static void main(String[] args) {
Scanner s = new Scanner(System.in);
System.out.println("Pleat enter the first number!");
double a = s.nextDouble();
Scanner w = new Scanner(System.in);
System.out.println("Pleat enter the second number (larger than the first number) !");
double b = w.nextDouble();
double count=1.0;
double r;
do {
r = b- count * a;
count ++;
}while(r==1.0);
System.out.println(count);
}
}
结果大概的样子为:
Pleat enter the first number!
2.3
Pleat enter the second number (larger than the first number) !
36.9
2.0
好忧伤啊, 不论添什么数,结果都是2.0
import java.util.Scanner;
public class Exg {
public static void main(String[] args) {
Scanner s = new Scanner(System.in);
System.out.println("Pleat enter the first number!");
double a = s.nextDouble();
Scanner w = new Scanner(System.in);
System.out.println("Pleat enter the second number (larger than the first number) !");
double b = w.nextDouble();
double d = (b-1.0)/a;
int count = (int) d;
System.out.println(count);
}
}
结果:
Pleat enter the first number!
2.1
Pleat enter the second number (larger than the first number) !
10.1
4
do {
r = b- count * a;
count ++;
}while(r==1.0);
楼主你的这一步有问题
首先count并不是整数,所以你使用count++是不考虑count++和count之间的数字的
你这个函数会先计算count==1时对应的r,然后count由1.0增加为2.0,此时r!=1.0,while循环终止,count就停止在2了
正确的应该是直接使用计算式子 count = (b-r)/a直接输出
顺便提一句,你举的例子也不对,b=3.9,a=1.3时,count应该等于(3.9-1.0)/1.3即2.9/1.3,大概在2.24左右吧