質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
87.20%
Python 3.x

Python 3はPythonプログラミング言語の最新バージョンであり、2008年12月3日にリリースされました。

解決済

[python]ドラえもん栗まんじゅう問題

FoiFoi
FoiFoi

総合スコア0

Python 3.x

Python 3はPythonプログラミング言語の最新バージョンであり、2008年12月3日にリリースされました。

4回答

0評価

0クリップ

1153閲覧

投稿2019/04/04 05:57

やりたいこと

  • dictionaryを関数に入力して、entry_objectの面積合計がtarget_dicの各valueを超えた時にそれぞれのkeyを用いて

"{key}がまんじゅうで一杯になるのに{count}分要します。"

を出力したい。

#現状

  • '東京ドームがまんじゅうで一杯になるのに45分要します。'で終了してしまう

    ↓
dicの1つ目のvalueを検討し、returnを返しroopが終了してしまう
(全てのvalueが検討されない)

  • 理想

'東京ドームがまんじゅうで一杯になるのに45分要します。'
'地球がまんじゅうで一杯になるのに●分要します。'
'太陽がまんじゅうで一杯になるのに△分要します。'

#コード

python

def baibai_inn_time_counter_1 (entry_object, target_dic): count = 0 while True: for key, value in target_dic.items(): if entry_object * 2 ** count/5 > value: return "{key}がまんじゅうで一杯になるのに{count}分要します。".format(key = key, count = count) else: count += 5

#関数への入力

python

input_dic = {"東京ドーム":1240000, "地球":1.08269693243E+21, "太陽":1.1494040321933E+46} baibai_inn_time_counter_1(6.5e-5, input_dic)

#出力

'東京ドームがまんじゅうで一杯になるのに45分要します。'

良い質問の評価を上げる

以下のような質問は評価を上げましょう

  • 質問内容が明確
  • 自分も答えを知りたい
  • 質問者以外のユーザにも役立つ

評価が高い質問は、TOPページの「注目」タブのフィードに表示されやすくなります。

気になる質問をクリップする

クリップした質問は、後からいつでもマイページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

teratailでは下記のような質問を「具体的に困っていることがない質問」、「サイトポリシーに違反する質問」と定義し、推奨していません。

  • プログラミングに関係のない質問
  • やってほしいことだけを記載した丸投げの質問
  • 問題・課題が含まれていない質問
  • 意図的に内容が抹消された質問
  • 過去に投稿した質問と同じ内容の質問
  • 広告と受け取られるような投稿

評価を下げると、トップページの「アクティブ」「注目」タブのフィードに表示されにくくなります。

t_obara
t_obara

2019/04/04 07:51

formatについてお調べになりましたか?「python format」でググればどのように使うべきかがわかりそうですが。ちなみに、地球が●としたいのに、1\.82\.\.を入力としているのは何故ですか?
FoiFoi
FoiFoi

2019/04/04 08:26

>formatについてお調べになりましたか? 以下サイトを確認しております。 https://note\.nkmk\.me/python-format-zero-hex/ >地球が●としたいのに、1\.82\.\.を入力としているのは何故ですか? 本問題は、entry_obectの個数が5分おきに倍々されていくというものでして、東京ドーム・地球・太陽のそれぞれがなん分後にentry_obectで満ちてしまうかという問題です。 そのため1\.082\.\.というのは地球の体積です。
t_obara
t_obara

2019/04/04 10:21

数字の意味をお聞きしているのではなく、●と印字したいのですよね?それであれば、●を設定すべきではないのでしょうか?という疑問です。あるいは体積を元に●を印字するようなロジックがあるのでしょうか?
FoiFoi
FoiFoi

2019/04/04 11:50 編集

>あるいは体積を元に●を印字するようなロジックがあるのでしょうか? はい、こちら体積を個数が増幅するentry_obectが満たすには何分かかるかというロジックが関数内if以下にございます。そのため●は体積という入力を受けて時間(分)が出力されます。

まだ回答がついていません

会員登録して回答してみよう

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
87.20%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問

同じタグがついた質問を見る

Python 3.x

Python 3はPythonプログラミング言語の最新バージョンであり、2008年12月3日にリリースされました。