Rss & SiteMap

课外天地 李树青 http://www.njcie.com

李树青 论坛 南京 财经 课外天地
共4 条记录, 每页显示 10 条, 页签: [1]
[浏览完整版]

标题:程序代码——采用面向对象方式设计的猜数字小游戏

1楼
admin 发表于:2007/4/20 21:55:17

功能:

系统产生随机数
进入循环
系统输入整数
系统判断大小是否正确
系统输出结果

分析:

系统  CSystem  输入 判断 输出
随机数  CRandom  设置初始值 产生
整数  Integer  
结果(字符串) String  

CRandom类文件:

public class CRandom
{
private int initialNumber=0;
private int rand=0;

public CRandom(int init)
{
  setInitialNumber(init);
  generateRandom();
  //System.out.println(rand);
}

public void setInitialNumber(int num)
{
  if(num<0)
   initialNumber=0;
  else
   initialNumber=num;
}

public void generateRandom()
{
  rand=(int)(Math.random()*initialNumber)+1;
}

public int getRandom()
{  
  return rand;
}
}

CSystem类文件:

public class CSystem
{
String displayString="";

public void setDisplayString(String str)
{
  displayString=str;
}

public int inputInteger()
{
  int i=0;
  try
  {
   System.out.println(displayString);
   byte[] b=new byte[10];
   System.in.read(b);    
   String str=new String(b);
   str=str.substring(0,str.indexOf((char)(13)));
   i=Integer.parseInt(str);
        
  }
  catch(Exception ex)
  {
   System.out.println(ex.getMessage());
  }
  return i;
}

public void outputString(String str)
{
  System.out.println(str);  
}

public String compare(int num1,int num2)
{
  if(num1>num2)
   return ">";
  else if(num1<num2)
   return "<";
  else
   return "==";
}
}

Main类文件:

public class Main
{      
    public static void main(String args[])
    {
     CRandom r=new CRandom(100);    
     int rnd=r.getRandom();
    
     CSystem s=new CSystem();
     s.setDisplayString("Please input the number:");
    
     while(true)
     {
      int i=s.inputInteger();
      String result=s.compare(i,rnd);      
      s.outputString(result);
      if(result=="==")
       System.exit(0);    
     }
    }
}

[此贴子已经被作者于2010-12-12 08:14:22编辑过]
2楼
shinhwa 发表于:2007/4/22 21:09:52
str=str.substring(0,str.indexOf((char)(13)));中的13是什么意思???
3楼
admin 发表于:2007/4/23 19:51:46
13为回车字符的Unicode编码
4楼
shinhwa 发表于:2007/4/23 20:01:33

Thanks!

共4 条记录, 每页显示 10 条, 页签: [1]

Copyright ©2002 - 2016 课外天地.Net
Powered By Dvbbs Version 8.3.0
Processed in .03125 s, 2 queries.