怎么取出各位十位和百位数,为什么这么操作能仔细地解释一下吗
来源:4-7 编程练习
warren_au
2020-04-04 16:34:16
int ge;
int shi;
int bai;
//使用for循环
for(int n=200;n<=300;n++);
{
//取出百位数
bai;
//取出十位数
shi ;
//取出个位数
ge;
//计算三个数字之积
int ji=bai+shi+ge
//计算三个数字之和
int he=bai+shi+ge
//如果积等于42并且和为12,则将满足条件的数输出
if(he==12&ji==42){
System.out.println(n);
break;
}
3回答
好帮手慕小脸
2020-04-04
同学你好,
1)楼上同学的代码是正确的哦,同学可以参考一下。
2)怎么取出各位十位和百位数,为什么这么操作能仔细地解释一下吗
//取出百位数 int bai = i/100; //取出十位数 int shi = i%100/10; //取出个位数 int ge = i%10;
取出个位:i%10;比如i=231,对10取余,余下的数就是个位数,就可以得到个位1。
取出十位:i%100/10;比如i=231,首先231%100拿到结果是31,然后我们再拿31/10得到结果3,也就是231的十位数字。
取出百位:i/100;比如i=231,231除以100就可以得到百位2啦~
如果我的回答解决了你的疑惑,请采纳,祝学习愉快~
如果我的回答解决了你的疑惑,请采纳,祝学习愉快~
苍星乱舞
2020-04-04
public class LoopDemo { public static void main(String[] args) { //定义变量ge、shi、bai,用于存放个位、十位、百位上的数字 //使用for循环 for(int i = 200;i<=300;i++) { //取出百位数 int bai = i/100; //取出十位数 int shi = i%100/10; //取出个位数 int ge = i%10; //计算三个数字之积 int ji = bai*shi*ge; //计算三个数字之和 int he = bai+shi+ge; //如果积等于42并且和为12,则将满足条件的数输出 if(ji==42&&he==12){ System.out.println(i); } } } }
warren_au
提问者
2020-04-04
编写一个程序,求出200到300之间的数,且满足条件:它们三个数字之积为42,三个数字之和为12。
效果图:
任务
1、 循环遍历200到300之间的整数
2、 分别取出个位、十位和百位上的数
3、 求三个数字的和与积
4、 判断三个数字的积是否为42,三个数字的和是否为12,如果满足条件则输出该数
相似问题