黑马程序员技术交流社区

标题: java练习题 [打印本页]

作者: 孙亚雄    时间: 2012-8-14 18:47
标题: java练习题
题目:809*??=800*??+9*??+1   其中??代表的两位数,8*??的结果为两位数,9*??的结果为3位数。求??代表的两位数,及809*??后的结果。   
帮忙解释下这道题目 谢谢了,想了好久还是没写出来
作者: 方志亮    时间: 2012-8-14 18:50
public static void main(String[] args){
                int n = 0;
                boolean flag = false;
                for(int i=10;i<100;i++)
                  if(809*i==800*i+9*i+1){
                          flag = true;
                          n = i;
                          break;
                  }
                if(flag)
                  System.out.println(n);
                else
                  System.out.println("无符合要求的数!");
        }
}
作者: 方志亮    时间: 2012-8-14 18:51
        public static void main(String[] args){
                int n = 0;
                boolean flag = false;
                for(int i=10;i<100;i++)
                  if(809*i==800*i+9*i+1){
                          flag = true;
                          n = i;
                          break;
                  }
                if(flag)
                  System.out.println(n);
                else
                  System.out.println("无符合要求的数!");
        }
}
作者: 黎健东    时间: 2012-8-14 19:23
/*
* 题目:809*??=800*??+9*??+1  
*  其中??代表的两位数,
*  8*??的结果为两位数,
*  9*??的结果为3位数
*  。求??代表的两位数,及809*??后的结果。   
* */
public class cal {
        public static void main(String [] args){
       
                int x = 10;
                //下面3个时约束条件
//                (8 * x) >= 10 && (8 * x) <= 99
//                (9 * x) >= 100 && (9 * x) <= 999
//                x >= 10 && x <=99
               
                while(x >= 10 && x <=99){
                        if((8 * x) >= 10 && (8 * x) <= 99 && (9 * x) >= 100 && (9 * x) <= 999){
                                if(809 * x == 800 * x + 9 * x + 1){
                                        System.out.println(x);
                                        break;
                                }
                        }
                        x++;
                }
        }
}


从逻辑上,安全按照楼主的需求,可以像我上面那样子写
逻辑上应该没有错误了
但是没有输出值
也就是说,无解
是不是楼主的需求哪个地方写错了
作者: 孙亚雄    时间: 2012-8-14 19:34
黎健东 发表于 2012-8-14 19:23
/*
* 题目:809*??=800*??+9*??+1  
*  其中??代表的两位数,

朋友给我的一道题目。。。谢谢了
作者: 孙亚雄    时间: 2012-8-14 19:35
你懂我爱你、 发表于 2012-8-14 18:51
public static void main(String[] args){
                int n = 0;
                boolean flag = false;

、、、、谢谢了




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