# 関係演算子 - Exercise ###### tags: `Python練習題目` **例**:着ぐるみのバイトの求人には幾つの条件があります。特に着ぐるみ自体の大きさが決まっているので身長制限があります。とある会社の求人には、160センチ以下が好ましいと書いていて、もし153センチの杏奈が応募したら果たしてTrueなのかFalseなのか、プログラミングで出力してください。 ``` 杏奈の身長を表す変数を利用して比較してください annaHigh = 153 出力例: Ture ``` :::info code: ```python= annaHigh = 153 print( annaHigh <= 160 ) ``` 答え: ![](https://i.imgur.com/SM2qRLJ.png) ::: -------------------------------------------- ## 門1:ビザ申請 オーストラリア、カナダでは、ワーキングホリデービザの発給が原則として18歳以上などの年齢制限がある。もし年齢が18以上だったら申請が通ります。もし15歳の陳さんが申請すると、結果はTrueそれともFalseが出るかをプログラミングで出力してください。 ``` 陳さんの年齢を表す変数を利用して比較してください chinAge = 15 出力例: False ``` :::info code: ```python= Age=18 chinAge=15 print(Age<=chinAge) ``` 結果: ![](https://i.imgur.com/AoEmvDd.png) ::: ## 問2:ランド入場 デスティニーランドでは、3歳(以下)は、パークチケットが必要ありません。無料で楽しむことができます!もし2歳の姪っ子ちゃんを連れて行ったら、結果はTrueが出るかFalseが出るかをプログラミングで出力してください。 ``` 自分で姪っ子ちゃんの年齢を表す変数を定義し比較してください。 出力例: Ture ``` :::info code: ```python= Age=3 nieceAge=2 print(Age>=nieceAge) ``` 結果: ![](https://i.imgur.com/imhlGjI.png) ::: ## 問3:シンデレラ シンデレラに一目惚れした王子様は、残されたサイズ22cmの靴をたよりに、お城の使いに頼み国中を駆け回らせ、手がかりのガラスのクツが足にぴったり合う女の人を探しました。 **以下が国中のビューティフルガールズの一覧です** 比較演算子で比較してみて、それぞれ結果を出力してください。 | 名前 | 足のサイズ(cm) | | --- | -------- | | Sam |26 | | Elsa |23 | | Ella |22 | | Snow-white |20 | ``` 出力例: False False True False ``` :::info code: ```python= Cinderella=22 Sam=26 Elsa=23 Ella=22 Snow_white=20 print(Cinderella==Sam) print(Cinderella==Elsa) print(Cinderella==Ella) print(Cinderella==Snow_white) ``` 結果: ![](https://i.imgur.com/I6npmcc.png) ::: ## 問4:当たり 宝くじが当たっているかどうかを判断するプログラムを作成してください。当たりの番号を表す変数「winningNum」を使ってプログラムを作成してください。 ``` winningNum=7777777 入力例1: Tell me your Lotto numbers:131450 出力例1: Such a pity! you miss the lottery jackpot again. 入力例2: Tell me your Lotto numbers:7777777 出力例2: Congratulations for winning the lottery! ``` :::info code: ```python= winningNum=7777777 LottoNum=int(input("Tell me your Lotto numbers:")) if LottoNum == 7777777: print("Congratulations for winning the lottery!") else: print("Such a pity! you miss the lottery jackpot again.") ``` 結果: ![](https://i.imgur.com/ZBxWYvc.png) ::: ## 問5:マイナンバーカードの判断 とある国のマイナンバーカードにルールがあり、女性だと偶数で男性だと奇数です。では、ルールに従って以下三名国民のジェンダーを出力してください。(入力すべきものと出力すべきものを例から見てください) | 名前 | 番号 | | -------- | -------- | | Tom | 208411| | Samdy | 874540| | Candy | 438062| ``` 入力例: Please input name1:Tom Please input number code:208411 Please input name2:Samdy Please input number code:874540 Please input name3:Candy Please input number code:438062 出力例: | Name = Tom ,Number = 208411 , Gender = male | | Name = Samdy ,Number = 874540 , Gender = female | | Name = Candy ,Number = 438062 , Gender = female | ``` :::success **アドバイス:性別の判断はパソコンに任せよ!!** この問題で用意されいてる番号は見れば、すぐ偶数であるかどうかを判別できます。ただし、データ入力の順番を変えると、または、新たなマイナンバーが与えられると判別できなくなるので、どの変数numberに対してもきちんと「if...else」を書きましょう ::: :::danger この問題は入力された3人のジェンダーを判別するプログラムなので、一人ずつ判別します。 従って、以下の様に書きます。 ```python= if number1 % 2 == 0 : print("| Name = {} ,Number = {} , Gender = female |".format(name1,number1)) else: print("| Name = {} ,Number = {} , Gender = male |".format(name1,number1)) if number2 % 2 == 0 : print("| Name = {} ,Number = {} , Gender = female |".format(name2,number2)) else: print("| Name = {} ,Number = {} , Gender = male |".format(name2,number2)) if number3 % 2 == 0 : print("| Name = {} ,Number = {} , Gender = female |".format(name3,number3)) else: print("| Name = {} ,Number = {} , Gender = male |".format(name3,number3)) ``` code: ```python= name1=str(input("Please input name1:")) number1=int(input("Please input number code:")) name2=str(input("Please input name2:")) number2=int(input("Please input number code:")) name3=str(input("Please input name3:")) number3=int(input("Please input number code:")) if number1%2 == 1: print("| Name = {} ,Number = {} , Gender = male |".format(name1,number1)) else: print("| Name = {} ,Number = {} , Gender = male |".format(name1,number1)) if number2%2 == 0: print("| Name = {} ,Number = {} , Gender = female |".format(name2,number2)) else: print("| Name = {} ,Number = {} , Gender = female |".format(name2,number2)) if number3%2 == 0: print("| Name = {} ,Number = {} , Gender = female |".format(name3,number3)) else: print("| Name = {} ,Number = {} , Gender = female |".format(name3,number3)) ``` 結果: ![](https://i.imgur.com/3VkEy5D.png) ::: ## 問6:生年月日 名前と生年月日を入力して、if文で姉は誰なのか妹は誰なのかを判断して出力してください。 ””””””””””””””””””””””””””””””””””””””””” **プログラミングで判断してください** ””””””””””””””””””””””””””””””””””””””””” | 名前 | 誕生日 | | -------- | -------- | | Amelia | 19960405 | | Gura | 19960823| ``` 入力例: Please input name1:Amelia Please input birthday code:19960405 Please input name2:Gura Please input birthday code:19960823 出力例: Amelia is big sister, and Gura is younger sister. ``` :::success **アドバイス:elseも作ろう** プログラミング関連の練習やテストではよくあることですが、 **テストケース**は、問題に書いてあるものだけじゃないです!! -  名前と生年月日を入力し、姉と妹を判断するプログラムを作成するのが目的です。 ただ、今のプログラムは**以下のテストケース**が与えられた場合、 または**入力の順番を変える**と何も表示されません。 | 名前 | 誕生日 | | -------- | -------- | | ユン・ジョンハン | 19951004| | チェ・スンチョル | 19950808 | ですので、**else**も書きましょう! ::: :::info code: ```python= name1=str(input("Please input name1:")) birthday1=int(input("Please input birthday code:")) name2=str(input("Please input name2:")) birthday2=int(input("Please input birthday code:")) if birthday1 < birthday2: print("{} is big sister, and {} is younger sister.".format(name1,name2)) else: print("{} is big sister, and {} is younger sister.".format(name2,name1)) ``` 結果: ![](https://i.imgur.com/AG6MUmp.png) ::: ## 問7:入国審査 :::success おめでとう。6月度勤労抽選により貴方を入国審査官に命ずる。即座配属のため、至急国境検問所の入国管理省に赴くように。 ::: あなたの仕事は入国審査官として入国者を審査することです。入国者が入国できるかどうかを判断するためのプログラムを書いてください。 国民の入国手続き比較的に容易なので、パスポート番号が記録と同じかどうかを判断すればよいのです。記録と同じであれば、入国できます。そうでなければ、できません。 **入出力を入力例と出力例と同じようにしてください** 実際のパスポート番号は以下の通りです。 | 名前 | 護照號碼 | | -------- | -------- | | Amy | A3539C88 | | Candy | LD234897| 以下は記録上のパスポート番号です。 | 名前 | 護照號碼 | | -------- | -------- | | Amy | A3539C88 | | Candy | LD234807| ``` 入力例1: Please input name:Amy Please input passport code:A3539C88 Please input check code:A3539C88 出力例1: Amy can go through immigration . 入力例2: Please input name:Candy Please input passport code:LD234897 Please input check code:LD234807 出力例2: Candy can't go through immigration, code LD234897 isn't same as LD234807 ``` :::info code: ```python= name=input("Please input name:") passport=input("Please input passport code:") check_code=input("Please input check code:") if passport==check_code: print("{} can go through immigration .".format(name)) else: print("{} can't go through immigration, code {} isn't same as {}".format(name,passport,check_code)) ``` 結果: Amy ![](https://i.imgur.com/ESPYBw5.png) Candy ![](https://i.imgur.com/jjoTpJB.png) ::: ## 問8:BMI(Body Mass Index) 健康のために肥満度をチェックするプログラムを作ってください。 まず、名前と身長と体重を入力できるようにして、BMIを算出します。そして、もしBMIが25以上だった「明日から運動しましょう」と出力し、そのほかは「このまま維持しましょう」と表示してください。尚、必ず出力を出力例のようにしてください。 **肥満度(BMI=体重(kg)÷身長(m)の二乗)** ``` **入力例1:** 名前を入力してください:月ノ美兎 身長(m)を入力して下さい:1.51 体重(kg)を入力して下さい:42 **出力例1:** 月ノ美兎さんのBMIは卍18.42卍なので、このまま維持しましょう **入力例2:** 名前を入力してください:ジャイアン 身長(m)を入力して下さい:1.57 体重(kg)を入力して下さい:70 **出力例2:** ジャイアンさんのBMIは卍28.40卍なので、明日から運動しましょう ``` :::info Code: ```python= name=str(input("名前を入力してください:")) height=float(input("身長(m)を入力して下さい:")) weight=int(input("体重(kg)を入力して下さい:")) BMI=weight/(height)**2 if BMI <= 25: print("{}さんのBMIは{:卍^7.2f}なので、このまま維持しましょう".format(name,BMI)) if BMI >= 25: print("{}さんのBMIは{:卍^7.2f}なので、明日から運動しましょう".format(name,BMI)) ``` 結果: ![](https://i.imgur.com/mqjlmh0.png) ::: ## 問9:「あの日、星が降った日それはまるで夢の景色のようにただひたすらに美しい眺めだった」 瀧君、三葉ちゃん!?もうそんなこと言ってる場合じゃないよ!? ティアマト彗星はもうすぐ落ちてくるから逃げよ?ね? 幸い、ティアマト彗星の落下地点はもう特定されていて、その位置は(a, b) 。 で、落下地点から距離 R メートル未満は、塵一つ残さず消されるので正直無理。 それから、町には緊急避難所が 3 箇所あり、その位置は以下の一覧から確認できる。 | 名前 | 位置 | | -------- | -------- | | 緊急避難所A | (25,10) | | 緊急避難所B | (25,15) | | 緊急避難所C | (70,70) | 以上の情報が与えられたとき、各緊急避難所が大丈夫なのか(つまり、落下地点から R メートル以上離れている)かどうかを判定するプログラムを書いてください。 「位置 (x, y) が落下地点から R メートル以上離れている」という条件は以下の式で表されます。 ![](https://i.imgur.com/Yc7n3q0.png) ![](https://i.imgur.com/1GPYLpR.png) ``` **入力例1:** ティアマト彗星の落下地点x:20 ティアマト彗星の落下地点y:10 落下地点の影響範囲R:10 緊急避難所の位置x:25 緊急避難所の位置y:10 **出力例1:** (25,10)無理... --------------------------------- **入力例2:** ティアマト彗星の落下地点x:20 ティアマト彗星の落下地点y:10 落下地点の影響範囲R:10 緊急避難所の位置x:25 緊急避難所の位置y:15 **出力例2:** (25,15)無理... --------------------------------- **入力例3:** ティアマト彗星の落下地点x:20 ティアマト彗星の落下地点y:10 落下地点の影響範囲R:10 緊急避難所の位置x:70 緊急避難所の位置y:70 **出力例3:** (70,70)なら大丈夫だね! ``` :::info Code: ```python= point_X=int(input("ティアマト彗星の落下地点x:")) point_Y=int(input("ティアマト彗星の落下地点y:")) impact_range_R=int(input("落下地点の影響範囲R:")) position_X=int(input("緊急避難所の位置x:")) position_Y=int(input("緊急避難所の位置y:")) place=int((position_X-point_X)**2+(position_Y-point_Y)**2) R=int(impact_range_R)**2 if place <= R: print("({},{})無理...".format(position_X,position_Y)) if place >=R: print("({},{})なら大丈夫だね!".format(position_X,position_Y)) ``` 結果: ![](https://i.imgur.com/cP72s6L.png) :::