黑马程序员技术交流社区

标题: 一个无聊又蛋疼的题 [打印本页]

作者: 李 玉林    时间: 2012-9-6 10:44
标题: 一个无聊又蛋疼的题
本帖最后由 李 玉林 于 2012-9-6 19:18 编辑

一辆卡车交通违规.撞人逃跑.现场三人目击.但都没记住车牌号,只记住一些特征,甲说:牌号前两个数是相同的.乙说:牌号后两个数是相同的.丙是个数学家.他说:四位的车号刚好是一个整数的平方,根据以上线索编程输出车排号...
作者: 黑马王建伟    时间: 2012-9-6 11:01
简单写了下,答案应该是7744,看代码
  1. public class A{
  2.         public static void main(String[] args) {
  3.                 method();
  4.         }
  5.         public static void method(){
  6.                 Integer c=0;
  7.                 for (int i = 0; i < 100; i++) {//因为是4位,所以定义循环100以内即可
  8.                         if((c=i*i).toString().length()==4){
  9.                                 char[]ch=c.toString().toCharArray();//变成字符数组进行比对
  10.                                 if((ch[0]==ch[1])&&(ch[2]==ch[3])){
  11.                                         System.out.println("那个整数是:"+i);
  12.                                         System.out.println("所看到的车牌是:"+c);
  13.                                 }
  14.                         }
  15.                 }
  16.         }
  17. }
复制代码

作者: 冯雅伦    时间: 2012-9-6 11:13
class Program
    {
        static void Main(string[] args)
        {
            for (int i = 30; i < 100; i++)
            {
                int num = i * i;
                string numS = Convert.ToString(num);
                char[] numC = numS.ToCharArray();
                if (numC[0] == numC[1] && numC[2] == numC[3])
                {
                    Console.WriteLine(numS);
                }
            }
            Console.ReadKey();
        }
    }
我的一个思路,最后结果是7744,不知对不对
作者: 许庭洲    时间: 2012-9-6 11:18
本帖最后由 许庭洲 于 2012-9-6 11:27 编辑

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
namespace 车牌号码
{
      calss Program
      {
            static void Main(string[] args)
            {
                  for (int a = 1; a <= 9; a++) //国内车牌数只有五位,第一位是除了0以外
                 {
                         for (int b = 0; b <= 9; b++)  //第二个数出现数字范围1-9
                        {
                                for (int c = 0; c <= 9; c++) //第三个数出现数字范围1-9
                                {
                                         for (int d = 0; d <= 9; d++) //第四个数出现数字范围1-9
                                         {
                                                   for (int e = 0; e <= 9; e++) //第五个数出现数字范围1-9
                                                   {
                                                         
                                                         if( (a==b) && (d==e) && ((Convert.ToInt32(a+b+c+d)/2==0)||(Convert.ToInt32(b+c+d+e)/2==0)) )  //牌号前两个数是相同的,牌号后两个数是相同的.,四位的车号刚好是一个整数的平方
                                                         Console.WriteLine(""违规车辆的车牌号码是 {0}",abcde);
                                                   }
                                           }
                                  }
                          }
                   }               
             }
       }
}
作者: 李玉林    时间: 2012-9-6 19:10
黑马王建伟 发表于 2012-9-6 11:01
简单写了下,答案应该是7744,看代码

谢谢解答
作者: 李玉林    时间: 2012-9-6 19:10
冯雅伦 发表于 2012-9-6 11:13
class Program
    {
        static void Main(string[] args)

谢谢解答
作者: 李玉林    时间: 2012-9-6 19:11
许庭洲 发表于 2012-9-6 11:18
using System;
using System.Collections.Generic;
using System.Linq;

谢谢解答




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