<rt id="bn8ez"></rt>
<label id="bn8ez"></label>

  • <span id="bn8ez"></span>

    <label id="bn8ez"><meter id="bn8ez"></meter></label>

    莊周夢蝶

    生活、程序、未來
       :: 首頁 ::  ::  :: 聚合  :: 管理

    一段小程序(Perl vs. Ruby)

    Posted on 2007-12-07 16:30 dennis 閱讀(2207) 評論(1)  編輯  收藏 所屬分類: 動態(tài)語言
        讀《Perl語言入門》(第四版,我買的書,網(wǎng)上有個翻譯質(zhì)量很高的電子版)的第10章的習(xí)題,人見人愛的猜數(shù)游戲,用perl寫出來大概這樣:
    $num=int (1 + rand 100);
    print "I have a number,guess it?:\n";
    while(<>)
    {
        
    chomp;
        
    next unless /\d+/;
        
    $_>$num? print "Too high\n" :
            
    $_==$num? last :print "Too low\n"
    }
       題外話:玩Perl的高人們別鄙視我,我是perl新手啊,如果寫的不夠“perl”,多多指點。
      
       這段代碼轉(zhuǎn)成ruby,可以這樣寫:

    $num=1+(rand 100)
    puts 
    "I have a number guess it?"
    while(true)
       gets.chomp
       next unless 
    ~/\d+/
         $_.to_i
    >$num?begin print "Too high\n" end:
           $_.to_i
    ==$num? begin break end:begin print "Too low\n" end
        
    end

        看出來了吧,兩者何其相似啊,包括perl里面人見人愛的$_,ruby也是支持的,唯一那么一點不同的地方就是last換成了break,然后是正則表達(dá)式左邊多了個~,你完全可以將這個符號去掉,不過會有警告,最后就是Ruby中的要執(zhí)行的表達(dá)式得放在begin...end里面,這一點讓我琢磨了一段時間,還以為Ruby不支持呢。讀《Perl語言入門》最大的樂趣除了妙趣橫生的語言、古靈精怪的符號之外,就是尋找Ruby中的Perl痕跡,哦哦,那個味道相當(dāng)重——駱駝的味道。不過現(xiàn)在Ruby不鼓勵這樣的寫法,畢竟,程序是給人讀的,因此可以改寫一下:
    $num=1+(rand 100)
    puts "I have a number guess it?"
    while(true)
       guess
    =STDIN.gets
       next unless guess
    =~/\d+/
       
    if(guess.to_i>$num)
          puts 
    "Too high"
       elsif(guess.to_i
    ==$num)
          
    break
       
    else
          puts 
    "Too low"
       end
    end


    評論

    # re: 一段小程序(Perl vs. Ruby)  回復(fù)  更多評論   

    2007-12-08 01:44 by 隔葉黃鶯
    I prefer Perl to Ruby.
    主站蜘蛛池模板: 亚洲成aⅴ人片久青草影院按摩| 亚洲av无码片在线播放| 波多野结衣亚洲一级| 日韩精品内射视频免费观看| 亚洲日韩精品无码专区网址| 成人精品视频99在线观看免费| 亚洲精品无码成人片在线观看 | 亚洲熟女乱色一区二区三区| 最新中文字幕免费视频| 亚洲中文无码永久免费| 日韩a在线观看免费观看| 精品国产亚洲一区二区三区在线观看| 国产精品jizz在线观看免费| 免费人成网上在线观看| 亚洲欧洲成人精品香蕉网| 久操视频在线免费观看| 亚洲国产成人精品无码区在线秒播 | 最近免费字幕中文大全| 久久精品国产亚洲沈樵| 91免费国产自产地址入| 亚洲熟妇少妇任你躁在线观看| 在线免费观看一级毛片| 美女视频黄视大全视频免费的| 久久久久久A亚洲欧洲AV冫| 久久99青青精品免费观看| 亚洲国产成a人v在线| 国产jizzjizz免费看jizz| 成在线人免费无码高潮喷水| 亚洲短视频在线观看| 免费黄色app网站| 中文在线免费看视频| ww亚洲ww在线观看国产| 国产专区一va亚洲v天堂| 久久综合给合久久国产免费| 亚洲色大成网站www尤物| 中文字幕亚洲不卡在线亚瑟| 91免费在线播放| 2022免费国产精品福利在线| 亚洲欧洲日本精品| 亚洲性日韩精品一区二区三区 | 中文字幕亚洲日本岛国片|