Python
 Computer >> コンピューター >  >> プログラミング >> Python

Pythonで時分時間をテキスト形式に変換するプログラム


時間と分の2つの入力があるとします。時間をテキスト形式で表示する必要があります。これは-

のようなものです
  • 8:00:8時の時計
  • 8:01:8時1分
  • 8:10:8時10分
  • 8:15:8時15分
  • 8:30:8時半
  • 8:40:20分から9分
  • 8:45:4分の1から9まで
  • 8:47:13分から9分
  • 8:28:8時28分

したがって、入力がh =9、m =42の場合、出力は18分から10になります

これを解決するには、次の手順に従います-

  • text:=次の30の異なる数値のテキストを含むリスト:["one"、 "two"、 "three"、 "four"、 "five"、 "six"、 "seven"、 "eight" 、「9」、「10」、「11」、「12」、「13」、「14」、「クォーター」、「16」、「17」、「18」、「19」、「20」、「 21」、「22」、「23」、「24」、「25」、「26」、「27」、「28」、「20- 9 "、"半分 "]
  • op:=空白の文字列
  • mが0と同じ場合、
    • op:=text[h-1]「o'clock」を連結します
  • それ以外の場合、mが30と同じ場合、
    • op:=text [m-1] concatenate "past" concatenate text [h-1]
  • それ以外の場合、mが1と同じ場合、
    • op:=text [m-1] concatenate "minute past" concatenate text [h-1]
  • それ以外の場合、mが15と同じ場合、
    • op:=text [m-1] concatenate "past" concatenate text [h-1]
  • それ以外の場合、m − 30がゼロ以外の場合、
    • op:=text [m-1] concatenate "minutes past" concatenate text [h-1]
  • それ以外の場合、mが45と同じ場合、
    • op:="quarter to" concatenate text [h]
  • それ以外の場合
    • op:=text [(60 --m)-1] "minutes to" concatenate text [h]
  • return op

理解を深めるために、次の実装を見てみましょう-

def solve(h, m):
   text=["one", "two", "three", "four", "five", "six", "seven", "eight","nine","ten", "eleven", "twelve", "thirteen", "fourteen", "quarter", "sixteen","seventeen", "eighteen", "nineteen", "twenty", "twenty-one","twenty-two", "twenty-three", "twenty-four", "twentyfive"," twenty-six", "twenty-seven", "twenty-eight", "twenty-nine", "half"]

   op=""
   if (m == 0):
      op = text[h - 1] + " o' clock"
   elif (m == 30):
      op = text[m - 1]+ " past " + text[h - 1]
   elif (m == 1):
      op = text[m - 1] + " minute past " + text[h - 1]
   elif (m == 15):
      op = text[m - 1]+ " past " + text[h - 1]
   elif (m < 30):
      op = text[m - 1] + " minutes past " + text[h - 1]
   elif (m==45):
      op = "quarter to " + text[h]
   else:
      op = text[(60 - m)-1] + " minutes to " + text[h]
   return op

h = 9
m = 42
print(solve(h, m))

入力

9, 42

出力

eighteen minutes to ten

  1. キロメートルをマイルに変換するPythonプログラム

    この記事では、以下に示す問題ステートメントの解決策について学習します。 問題の説明 −距離はキロメートルで与えられ、マイルに変換する必要があります 私たちが知っているように、1キロメートルは0.62137マイルに相当します。 使用する式 Miles = kilometer * 0.62137 それでは、以下の実装の概念を見てみましょう- 例 kilometers = 5.5 # conversion factor as 1 km = 0.621371 miles conv = 0.621371 # calculation miles = kilometers * conv print(k

  2. 16進文字列を10進数に変換するPythonプログラム

    この記事では、以下に示す問題ステートメントの解決策について学習します。 問題の説明 − 16進文字列が与えられたので、それを10進数に変換する必要があります。 問題を解決するための2つのアプローチがあります- ブルートフォースアプローチ 組み込みモジュールの使用 ブルートフォース方式 ここでは、明示的な型キャスト関数、つまり整数を利用します。この関数は、2つの引数、つまり16進数と同等の引数とベース(16)を取ります。この関数は、16進文字列を整数型の同等の10進数に変換するために使用されます。これは、さらに文字列形式に型キャストして戻すことができます。 例 #input strin