開発環境
- macOS Mojave - Apple (OS)
- Emacs (Text Editor)
- Windows 10 Pro (OS)
- Visual Studio Code (Text Editor)
- Python 3.7 (プログラミング言語)
退屈なことはPythonにやらせよう ―ノンプログラマーにもできる自動化処理プログラミング (Al Sweigart(著)、相川 愛三(翻訳)、オライリージャパン)の第I部(Pythonプログラミングの基礎)、3章(関数)、3.11(演習プロジェクト)、3.11.1(コラッツ数列)の解答を求めてみる。
コード
Python 3
#!/usr/bin/env python3
def collatz(number: int) -> None:
if number % 2 == 0:
return int(number / 2)
return 3 * number + 1
if __name__ == '__main__':
# n = int(input('整数を入力してください: '))
# while n != 1:
# print(n)
# n = collatz(n)
# print(n)
for n in range(1, 11):
print('-' * 10)
print(f'n = {n}')
while n != 1:
print(f'{n:>2d}')
n = collatz(n)
print(f'{n:>2d}')
入出力結果(cmd(コマンドプロンプト)、Terminal、Jupyter(IPython))
$ python3 sample1.py ---------- n = 1 1 ---------- n = 2 2 1 ---------- n = 3 3 10 5 16 8 4 2 1 ---------- n = 4 4 2 1 ---------- n = 5 5 16 8 4 2 1 ---------- n = 6 6 3 10 5 16 8 4 2 1 ---------- n = 7 7 22 11 34 17 52 26 13 40 20 10 5 16 8 4 2 1 ---------- n = 8 8 4 2 1 ---------- n = 9 9 28 14 7 22 11 34 17 52 26 13 40 20 10 5 16 8 4 2 1 ---------- n = 10 10 5 16 8 4 2 1 $
0 コメント:
コメントを投稿