Quantcast
Viewing all articles
Browse latest Browse all 2722

じゃんけんツール_(bash,perl,python)

いろいろな言語に触れてみたいと思い、それぞれの言語で同じような挙動となるような簡単なプログラムを組んでみました。 題材にしたのは、「じゃんけんプログラム」です。 使用した言語は、bash,perl,python です。長いので、内容は折りたたんで表示しています。 言語は仕事で使うことがあるかもしれないものから選択しました bash のシェルスクリプト クリックすると開きます janken.sh #!/bin/bash ########################################## # # bash でじゃんけんツールを作成してみる # ########################################## ## グーチョキパーをランダムで出す関数 function JANKEN () { Flag=$(echo $(($RANDOM % 3))) if [[ ${Flag} == 0 ]]; then janken=$(echo "グー") echo "###############################" echo "" echo "ぽいっ! 僕はグー を出したよ" echo "" echo "###############################" elif [[ ${Flag} == 1 ]]; then janken=$(echo "チョキ") echo "###############################" echo "" echo "poi!! 僕はチョキ を出したよ" echo "" echo "###############################" else janken=$(echo "パー") echo "###############################" echo "" echo "ァパー!!! を僕は出したよぉ" echo "" echo "###############################" fi } ## ジャンケン入力関数 function PLAY () { echo "↓↓グー or チョキ or パー を入力してください↓↓" read input } ## ループ処理 function ROOP () { while [[ ${input} != グー ]] && [[ ${input} != チョキ ]] && [[ ${input} != パー ]] do PLAY done } ## ジャンケン開始 echo "" echo "### Let's play ジャンケン ###" echo "" PLAY ROOP JANKEN echo "" while [[ ${janken} == ${input} ]] do echo "あいこ!! もう一度 グー or チョキ or パー を入力してください" read input ROOP JANKEN echo "" done if [[ ${janken} == グー ]] && [[ ${input} == チョキ ]]; then echo "残念、、あなたの負けです" echo "また挑戦してね" echo "" elif [[ ${janken} == グー ]] && [[ ${input} == パー ]]; then echo "くそっ あなたの勝ちです" echo "おめでとう!!" echo "" elif [[ ${janken} == チョキ ]] && [[ ${input} == パー ]]; then echo "あなたの負けです。さようなら" echo "" elif [[ ${janken} == チョキ ]] && [[ ${input} == グー ]]; then echo "君の勝ちだ。。。次は負けないよ" echo "" elif [[ ${janken} == パー ]] && [[ ${input} == グー ]]; then echo "僕の勝ちだ!!" echo "君じゃ僕には勝てないみたいだね" echo "" elif [[ ${janken} == パー ]] && [[ ${input} == チョキ ]]; then echo "君の勝ちだね" echo "僕はまた強くなって戻ってくる" echo "" fi perl クリックすると開きます janken.pl #!/usr/bin/perl ########################################## # # perl でじゃんけんツールを作成してみる # ########################################## use strict; use warnings; my $janken; ### ジャンケン開始 print "↓↓グー or チョキ or パー を入力してください↓↓\n"; my $input = <STDIN>; chomp($input); ## ルーチン呼び出し &JANKEN; ## グーチョキパーをランダムで出すルーチン sub JANKEN{ my $Flag = int(rand(3)); if ($Flag == 0){ $janken = "グー"; print "###############################\n"; print "\n"; print "ぽいっ! 僕はグー を出したよ\n"; print "\n"; print "###############################\n"; }elsif ($Flag == 1){ $janken = "チョキ"; print "###############################\n"; print "\n"; print "poi!! 僕はチョキ を出したよ\n"; print "\n"; print "###############################\n"; }else{ $janken = "パー"; print "###############################\n"; print "\n"; print "ァパー!!! を僕は出したよぉ\n"; print "\n"; print "###############################\n"; } } while ($janken eq $input){ print "あいこ!! もう一度 グー or チョキ or パー を入力してください\n"; my $input = <STDIN>; chomp($input); &JANKEN; print "\n"; } if ($janken eq "グー" && $input eq "チョキ"){ print "残念、、あなたの負けです\n"; print "また挑戦してね\n"; print "\n"; }elsif ($janken eq "グー" && $input eq "パー"){ print "くそっ あなたの勝ちです\n"; print "おめでとう!!\n"; print "\n"; }elsif ($janken eq "チョキ" && $input eq "パー"){ print "あなたの負けです。さようなら\n"; print "\n"; }elsif ($janken eq "チョキ" && $input eq "グー"){ print "君の勝ちだ。。。次は負けないよ\n"; print "\n"; }elsif ($janken eq "パー" && $input eq "グー"){ print "僕の勝ちだ!!\n"; print "君じゃ僕には勝てないみたいだね\n"; print "\n"; }elsif ($janken eq "パー" && $input eq "チョキ"){ print "君の勝ちだね\n"; print "僕はまた強くなって戻ってくる\n"; print "\n"; } python クリックすると開きます janken.py #!/usr/bin/python3 ########################################## # # python でじゃんけんツールを作成してみる # ########################################## import random ## ジャンケン入力関数 def PLAY(): global val print ("↓↓グー or チョキ or パー を入力してください↓↓") val = input() ## ループ処理 def ROOP(): while val != "グー" and val != "チョキ" and val != "パー": PLAY() ## グーチョキパーをランダムで出す関数 def JANKEN(): Flag = random.randrange(3) global janken if Flag == 0: janken = "グー" print("###############################") print("") print("ぽいっ! 僕はグー を出したよ") print("") print("###############################") elif Flag == 1: janken= "チョキ" print("###############################") print("") print("poi!! 僕はチョキ を出したよ") print("") print("###############################") else: janken= "パー" print("###############################") print("") print("ァパー!!! を僕は出したよぉ") print("") print("###############################") ## ジャンケン開始 print("") print("### Let's play ジャンケン ###") print("") PLAY() ROOP() JANKEN() print("") while janken == val: print("あいこ!! もう一度 グー or チョキ or パー を入力してください") val = input() ROOP() JANKEN() if janken == "グー" and val == "チョキ": print("残念、、あなたの負けです") print("また挑戦してね") print("") elif janken == "グー" and val == "パー": print("くそっ あなたの勝ちです") print("おめでとう!!") print("") elif janken == "チョキ" and val == "パー": print("あなたの負けです。さようなら") print("") elif janken == "チョキ" and val == "グー": print("君の勝ちだ。。。次は負けないよ") print("") elif janken == "パー" and val == "グー": print("僕の勝ちだ!!") print("君じゃ僕には勝てないみたいだね") print("") elif janken == "パー" and val == "チョキ": print("君の勝ちだね") print("僕はまた強くなって戻ってくる") print("")

Viewing all articles
Browse latest Browse all 2722

Trending Articles