黑马程序员技术交流社区

标题: 今天这里搞混了,现在算算才弄清,来看看 [打印本页]

作者: 权跃杰    时间: 2012-8-1 22:35
标题: 今天这里搞混了,现在算算才弄清,来看看
在主函数中输出满足下列条件的四位数:个位和千位相等,十位和百位相等。
答:
class  ShuZu
{
        public static void main(String[] args)
        {
                for(int i=1000;i<10000;i++)//数据是四位数
                {
                        int ge=i%1000%100%10;  //取个位上的数  这个和int ge=i%10  取的结果一样
                        int shi=i%1000%100/10; //取十位上的数  int shi = i/10%10;
                        int bai=i%1000/100;    //取百位上的数  int bai = i/100%10;
                        int qian=i/1000;       //取千位上的数
                        if(ge==qian&&shi==bai)  //判断是否满足条件
                        {
                                System.out.println("这个四位数是:"+i);
                        }
               
                }
        }
}
今天做的时候结果一样,看着老师的算法不一样,结果自己检查自己的,一会就弄混了,最后好半天才弄清
作者: pphdsny3    时间: 2012-8-1 23:23
我也写了个类似的,虽然看上去比楼主的麻烦点,但思路绝对很清晰,可以看看:
  1. class  ShuZu
  2. {
  3.         public static void main(String[] args)
  4.         {
  5.                 for(int i=1000;i<10000;i++)//数据是四位数
  6.                 {
  7.                         //先得到千位
  8.                         int qian = i/1000;
  9.                         //在得到百位
  10.                         int bai = (i - qian*1000)/100;
  11.                         //得到十位
  12.                         int shi = (i - qian*1000 - bai*100)/10;
  13.                         //得到各位
  14.                         int ge = (i - qian*1000 - bai*100 - shi*10);
  15.                         if(ge==qian&&shi==bai)  //判断是否满足条件
  16.                         {
  17.                                 System.out.println("这个四位数是:"+i);
  18.                         }
  19.                
  20.                 }
  21.         }
复制代码





欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/) 黑马程序员IT技术论坛 X3.2