孫のその先の表示

孫の次は、ひ孫、玄孫・・・・。

その先は、知らなかったが、昨日調べてみたところ、

来孫、昆孫、仍孫、雲孫、雲孫の子、雲孫の孫・・・と続くらしい。

 

それでは、何代離れていた場合に何孫になるのかについて、

コードを考えてみました。

python3.6

 

○コード

# coding=utf-8

N=int(input("何代離れてる?:"))

a=["子","孫","ひ孫","玄孫","来孫","昆孫","仍孫","雲孫"]

if N==0:
  print("本人")
elif N>0 and N<=8:
  print(a[N-1])
else:
  if N%8==0:
   print(a[7]+("の"+a[7])*(N//8-1))
  else:
   print(a[7]+("の"+a[7])*(N//8-1)+"の"+a[N%8-1])

○入力した数値:1000

○アウトプット:

雲孫の雲孫の雲孫の雲孫の雲孫の雲孫の雲孫の雲孫の雲孫の雲孫の雲孫の雲孫の雲孫の雲孫の雲孫の雲孫の雲孫の雲孫の雲孫の雲孫の雲孫の雲孫の雲孫の雲孫の雲孫の雲孫の雲孫の雲孫の雲孫の雲孫の雲孫の雲孫の雲孫の雲孫の雲孫の雲孫の雲孫の雲孫の雲孫の雲孫の雲孫の雲孫の雲孫の雲孫の雲孫の雲孫の雲孫の雲孫の雲孫の雲孫の雲孫の雲孫の雲孫の雲孫の雲孫の雲孫の雲孫の雲孫の雲孫の雲孫の雲孫の雲孫の雲孫の雲孫の雲孫の雲孫の雲孫の雲孫の雲孫の雲孫の雲孫の雲孫の雲孫の雲孫の雲孫の雲孫の雲孫の雲孫の雲孫の雲孫の雲孫の雲孫の雲孫の雲孫の雲孫の雲孫の雲孫の雲孫の雲孫の雲孫の雲孫の雲孫の雲孫の雲孫の雲孫の雲孫の雲孫の雲孫の雲孫の雲孫の雲孫の雲孫の雲孫の雲孫の雲孫の雲孫の雲孫の雲孫の雲孫の雲孫の雲孫の雲孫の雲孫の雲孫の雲孫の雲孫の雲孫の雲孫の雲孫の雲孫の雲孫の雲孫の雲孫の雲孫の雲孫

 

やったー。

もう少しスマートな記述方法がございましたらご教示お願いします。