- 最後登錄
- 2024-4-17
- 在線時間
- 0 小時
- 註冊時間
- 2015-9-8
- 閱讀權限
- 20
- 精華
- 0
- UID
- 15855326
- 帖子
- 278
- 積分
- 277 點
- 潛水值
- 8900 米
| 如果瀏覽伊莉時速度太慢或無法連接,可以使用其他分流瀏覽伊莉,www01.eyny.com(02,03)。 本帖最後由 weirdococo 於 2017-3-29 08:14 PM 編輯
最近學校再教C++,出了個作業,然後我用perl寫了一次如下,
- #!/usr/bin/env perl6
- use v6;
- my $howManyShouldPick = { repeat { $_ = prompt("要猜幾個數字,也就是說要生成幾個亂數") } until $_ ~~ /^ \d+ $/; $_ }.();
- my @randPick = ^10 .roll($howManyShouldPick);
- my $inputString;
- my $countForHowManyTimes = 0;
- "猜數字,有 $howManyShouldPick 個數字(每一個範圍是0 .. 9)".say;
- repeat {
- repeat { $inputString = prompt("請輸入 $howManyShouldPick 個數字,不能多不能少") } until $inputString ~~ /^ \d ** {$howManyShouldPick} $/;
- $inputString = $inputString.split("",:skip-empty).map({ $_.Int }).cache;
- say qq:to/END/;
- 你答的次數有 { ++ $countForHowManyTimes } 次
- 你答對的元素有 { ($inputString.Bag ∩ @randPick.Bag).values.sum } 個
- 你答對的順序有 { [+] (@$inputString «==» @randPick) } 個
- END
- }
- until [&&] (@$inputString «==» @randPick) ;
- "你答對了,恭喜".say;
複製代碼
其實我可以想辦法把上面的東西全部用C++照寫一次,但我想要了解C++想事情的方法!
畢竟C++有比較豐富友善的語法(照老師的說法,其他語在語法概念少於C++,像是perl有只有regex可以和C++比而已)!
那這題用C++怎麼寫呢?(提外話,現在perl開始要做javascript backend,期待哪一天C++也有javascript backend,這樣就不用學會javascript了!)
... |
附件: 你需要登錄才可以下載或查看附件。沒有帳號?註冊 |