!じゃんけん勝敗判定アルゴリズム *二人でじゃんけん **($a - $b + 3) % 3 *複数人でじゃんけん **[$r |= 1 << $a|https://qiita.com/moriweborz/items/445dc60dbdc907ec4204] じゃんけんの勝敗なんて考えた事なかった。 二人でじゃんけんを行った時の「グー」、「チョキ」、「パー」の9通りの組み合わせで、「勝ち」、「負け」、「引き分け」の3通りの結果が1行で判断出来るとは…「[じゃんけん勝敗判定アルゴリズムの思い出|https://staku.designbits.jp/check-janken/]」で衝撃を受けて早速じゃんけん判定ページを作ってみた。(やっぱりperlで) これはもっとすごい($r |= 1 << $a)1行の繰り返しでじゃんけん判定が出来る[【ネタばれ】大は小を兼ねるジャンケンプログラムのアルゴリズム(どんなプログラムでもアルゴリズムは使用可)【注意】|https://qiita.com/moriweborz/items/445dc60dbdc907ec4204] !ちゃぼ WebSocketの[ちゃぼ|http://www21051ue.sakura.ne.jp:3001/]にも『じゃんけん機能』を追加したよ ![じゃんけんポン|http://www21051ue.sakura.ne.jp:5000/jankenpon.html]

じゃんけんぽん



5人でじゃんけんポン

!ターミナルでじゃんけんぽん #!/usr/bin/perl use strict; use warnings; my $item = {qw(0 グー 1 チョキ 2 パー)}; my $finish = 'e'; play(); sub play{ while((my $input = prompt('> ')) ne $finish){ my $computer = int(rand()*3); print "あなた-> $item->{$input} --- $item->{$computer} <-コンピュータ \n\n"; print "@{[qw(あいこ あなたの負け あなたの勝ち)[judg($input,$computer)]]}です\n\n"; } } sub judg{ my ($you,$computer) = @_; return ($you - $computer + 3) % 3; } sub prompt{ my $ps1 = shift; print join("、",message()),"\n"; print $ps1; while(<>){ chomp(); return $finish if(/^(e|q|exit|quit|999)$/i); return $_ if(exists $item->{$_}); print $ps1; } return $finish; } sub message{ map {"$_ :$item->{$_}"} sort keys(%$item); } !ERROR ccess to script at 'https://webperlcdn.zero-g.net/v0.07-beta/webperl.js' from origin 'http://www21051ue.sakura.ne.jp' has been blocked by CORS policy: No 'Access-Control-Allow-Origin' header is present on the requested resource.