有两个正整数a和b,已知a*b=2048,求a丶b各为何值时,a+b的值最小值。 用java语言
有两个正整数a和b,已知a*b=2048,求a丶b各为何值时,a+b的值最小值。用java语言编写,求大神帮助...
有两个正整数a和b,已知a*b=2048,求a丶b各为何值时,a+b的值最小值。 用java语言编写,求大神帮助
展开
2个回答
展开全部
public static void main(String[] args) {
int x = 1;
int y = 2048;
int a = x;
int b = y;
int temp;
for(; x < y; x ++){
if(y % x == 0){
temp = y / x;
if((temp + x) < (a + b)){
a = x;
b = temp;
}
}
}
System.out.println("a:" + a + ",b:" + b);
}
更多追问追答
追问
怎么改变只让程序输出一遍结果呢
追答
只输出一遍结果是什么意思?
现在不就是只输出了a和b的值么?
展开全部
public static void main(String[] args) {
int min = 99999;
int test;
int a;
int b;
for(int i=1; i<2048;i++){
a = i;
b = 2048/i;
test = a+b;
if(test<min){
//里面可以定最小的a与b的值 和min一样
min = test;
}
}
System.out.println(min);
}
min= 90
int min = 99999;
int test;
int a;
int b;
for(int i=1; i<2048;i++){
a = i;
b = 2048/i;
test = a+b;
if(test<min){
//里面可以定最小的a与b的值 和min一样
min = test;
}
}
System.out.println(min);
}
min= 90
更多追问追答
追问
int min=99999什么意思啊?
追答
随便设的一个最大值~~~~
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询
广告 您可能关注的内容 |