# Python print() and format - Exercise ###### tags: `Python課堂練習題目` **例1**: 以下の条件を満たし、円周、円面積を計算出来るプログラムを作ってください。 * まず、「半径」入力できるようにすること * 円周率には 3.14 を使うこと * 円周、円面積を計算し、出力してください。 ``` **入力例:** Please input value r:1 **出力例:** The round: 6.28 The area: 3.14 ``` :::info Code: r = float(input("Please input value r:")) r_Round = r * 2 * 3.14 r_Area = r * r * 3.14 print("The round:", r_Round) print("The area:", r_Area) 結果: ![](https://i.imgur.com/u7n9gvs.png) ::: --- ## 問題1:print()関数の引数に以下の変数をすべて渡して「sep」に適切な値を設定し、出力例の通りに出力してください。(sepのみ) ``` koLove="いぬ" brianLove="きつね" suLove="うさぎ" **出力例:** いぬ きつね うさぎ ``` :::danger Code: ` <==このバッククォートですよ! ```python= koLove="いぬ" brianLove="きつね" suLove="うさぎ" print(koLove,brianLove,suLove,sep="\n") ``` 結果: ![](https://i.imgur.com/s6CgYjf.png) ::: ## 問題2:print()関数の引数に以下の変数をすべて渡して「sep」に適切な値を設定し、出力例の通りに出力してください。(sepのみ) ``` string = " と " koLove = "いぬ" brianLove = "きつね" suLove="うさぎ" **出力例:** いぬ と きつね と うさぎ ``` :::info Code: ```python= string=" と " koLove="いぬ" brianLove="きつね" suLove="うさぎ" print(koLove,string,brianLove,string,suLove,sep=" ") ``` 結果: ![](https://i.imgur.com/4c1X9L8.png) ::: ## 問題3:print()関数の引数「end」に適切な値を設定し、以下の変数の値を出力例の通りに出力してください。(endのみ) ``` koLove = "THE IDOLM" samLove = "STER MILLION" everyoneLove = "LIVE" **出力例:** THE IDOLM@STER MILLION LIVE! ``` :::info Code: ```python= koLove="THE IDOLM" samLove="STER MILLION" everyoneLove="LIVE" print(koLove,end="@") print(samLove,end=" ") print(everyoneLove,end="!") ``` 結果: ![](https://i.imgur.com/jrYKh5P.png) ::: ## 問題4:print()関数の引数「sep」と「end」に適切な値を設定し、以下の変数の値を出力例の通りに出力してください。 ``` koLove="Fate" samLove="Grand" everyoneLove="Order" **出力例:** Fate/Grand Order ``` :::info Code: ```python= koLove="Fate" samLove="Grand" everyoneLove="Order" print(koLove,end="/") print(samLove,end=" ") print(everyoneLove) ``` 結果: ![](https://i.imgur.com/5GvroX5.png) ::: ## 問題5:format関数を使用して文字列に以下の変数を埋め込んでください。 ``` sign1="おひつじ座" sign2="しし座" sign3="いて座" 出力例: 今日の星座ランキングは、一位:おひつじ座、二位:しし座、三位:いて座 ``` :::info Code: ```python= sign1="おひつじ座" sign2="しし座" sign3="いて座" print('今日の星座ランキングは、一位:{0} 二位:{1} 三位:{2}'.format(sign1,sign2,sign3)) ``` 結果: ![](https://i.imgur.com/ls99hhg.png) ::: ## 問題6:以下のコードの{}にindexを入力し、出力が出力例になるようにしてください。 ![](https://i.imgur.com/373EGRb.png) ``` 出力例: くらい ``` :::info Code: ```python= wordA="い" wordB="く" wordC="ら" print("{1}{2}{0}".format(wordA,wordB,wordC)) ``` 結果: ![](https://i.imgur.com/4lDt6LM.png) ::: ## 問題7:以下の条件を満たして出力例のように出力してください。 * 2021の空白を*で埋め、左寄せ、フィールド幅8にし、出力してください。 * 12の空白を#で埋め、中央寄せ、フィールド幅8にし、出力してください。 * 31の空白を0で埋め、右寄せ、フィールド幅8にし、出力してください。 ``` **出力例:** |2021****| |###12###| |00000031| ``` :::info Code: ```python= year="2021" print("{:*<8}".format(year)) number="12" print("{:#^8}".format(number)) number2="31" print("{:0>8}".format(number2)) ``` 結果: ![](https://i.imgur.com/RQZlwiW.png) ::: ## 問題8:吸血鬼さんはしょく...研究のため人間の血液量を知りたくて、我々にオファーをしてきました。人の血液を求めるプログラムを作成してください。(コメントを加えてください) * 体重を入力できるようにすること * 公式を使用して血液の重さと容量を出力すること。(小数点以下3桁まで表示) **公式:** 血液量(重さ kg) = 体重kg / 13 血液量(容量 ml) = 血液量(重さ kg) / 1.055 x 1000 ``` **入力例:** Please input your weight:67.5 **出力例:** 血液量(重さ):5.192kg 血液量(容量):4921.619ml ``` :::info Code: ```python= weight=float(input("Please input your weight:")) # 血液量(重さ)の計算 kg=weight/13 # 血液量(容量)の計算 ml=kg/1.055*1000 print("{:.3f}".format(kg),"kg") print("{:.3f}".format(ml),"ml") ``` 結果: ![](https://i.imgur.com/3Tw6o0X.png) ::: ## 問題9:ATMからお金を下す簡略化のプログラムを作ってください。(データタイプを意識してください)、(コメントを加えてください。) * まず、所持金を表す変数「money」を作成し、2000000を代入させること。 * 次に、ユーザーにいくら下すかを入力させること。 * 最後、一定のフォーマットに従い、残高を出力すること。 1. 「ご利用明細」中央寄せ、フィールド幅18。 2. 「お取引金額」中央寄せ、フィールド幅18。 3. 「下す金額」右寄せ、フィールド幅22。 4. 「残高の金額」右寄せ、フィールド17、数値の区切り文字を設定すること、小数点以下第2位まで表示すること。 ``` money=200000 **入力例1:** Input the amount of withdrawal:390 **出力例1:** ------------------------ | ご利用明細 | ------------------------ | お取引金額 | ------------------------ | 390.0| ------------------------ |残高: 199,610.00| ------------------------ **入力例2:** Input the amount of withdrawal:765.765 **出力例2:** ------------------------ | ご利用明細 | ------------------------ | お取引金額 | ------------------------ | 765.765| ------------------------ |残高: 199,234.23| ------------------------ ``` :::danger Code: ```python= # 所持金 money=200000 # 取引金額入力 withdrawal=float(input("Input the amount of withdrawal:")) # 残高金額の計算 balance_amount=money-withdrawal print("{:^18}".format("ご利用明細")) print("{:^18}".format("お取引金額")) print("{:>22}".format(withdrawal)) print("残高:{:>17.2f}".format(balance_amount)) ``` 結果: **ちゃんと、" - " と " | "をプリントしましょう~~ 直接出力例からコピーしてもいいですよ** ![](https://i.imgur.com/UEgUUZu.png) ::: ## 問題10:🍎園を経営している林吾さんは在庫管理で悩まされています。そんな林吾さんのために🍎の個数の入力ができ、ダース数を表示できるプログラムを作成せよ!(コメントを加えてください) * 現在りんごの在庫個数を表す変数「stock」を使用してプログラムを書いていきましょう。 * まず、追加するりんごの個数を入力できるようにすること。 * 追加した後の在庫個数を表示すること。 * りんごは1ダースで出荷するのでダース数を出力すること。 **頑張ってformat関数を使って以下のように出力すること** ``` stock=12 **入力例1:** 追加する個数を入力してください:0 **出力例1:** アイテム: りんご 個数: 12 ダース数: 1 **入力例2:** 追加する個数を入力してください:40 **入力例2:** アイテム: りんご 個数: 52 ダース数: 4 ``` :::info Code: ```python= stock=12 # 追加するりんごの個数 add=int(input("追加する個数を入力してください:")) # 追加した後の在庫戸数の計算 add_stock=stock+add # ダース計算 dozen=add_stock//12 print("アイテム:","りんご",end="\n") print("個数:",add_stock,end="\n") print("ダース数:",dozen,end="\n") ``` 結果: ![](https://i.imgur.com/LdRoLDG.png) :::