perl练习题猜数字

回复 收藏
要求,让用户不断猜测范围1-100的数字,直到猜中为止。程序需要用到一个随机数字公式:int(1 + rand 100), 当用户猜错时,程序应该提示Too hight 或者 Too low, 如果用户键入quit或者exit等字样,或是键入一个空白行,程序就应该中止。用户猜到了,提示猜对了,并且立即退出。
  1. #! /usr/bin/perl
  2. my $n = int (1 + rand 100);
  3. while (1) {
  4.     print "Please guess a number(1-100): ";
  5.     chomp (my $i = );
  6.     if ($i =~ /\d+/ && $i > 0 && $i < 100) {
  7.         if ($i > $n) {
  8.             print "Too hight\n";
  9.         } elsif ($i < $n) {
  10.             print "Too low\n";
  11.         } else {
  12.             print "Wright\n";
  13.             last;
  14.         }
  15.     } elsif ($i =~ /^(exit|quit|\s+)$/) {
  16.         last;
  17.     } elsif ($i eq undef) {
  18.         last;
  19.     } else {
  20.         redo;
  21.     }
  22. }
2012-12-25 11:56 举报
已邀请:

回复帖子,请先登录注册

退出全屏模式 全屏模式 回复
评分
可选评分理由: