開発環境
- OS X Mavericks - Apple(OS)
- Emacs (CUI)、BBEdit - Bare Bones Software, Inc. (GUI) (Text Editor)
- Python (プログラミング言語)
初めてのPerl 第6版 (Randal L. Schwartz (著)、brian d foy (著)、Tom Phoenix (著)、近藤 嘉雪 (翻訳)、オライリージャパン)の15章(スマートマッチとgiven-when)の15.6(練習問題)4.をPythonで考えてみる。
15.6(練習問題)4.
コード(BBEdit, Emacs)
sample4.py
#!/usr/bin/env python3 #-*- coding: utf-8 -*- import re import sys def divisors(n): result = [] for x in range(2, n // 2 + 1): if n % x == 0: result.append(x) return result n = sys.argv[1] if re.match(r'\D', n): print('Not a number.') else: primes = divisors(int(n)) if primes == []: print('その数が素数である。') else: print(' '.join(map(str, primes)))
入出力結果(Terminal, IPython)
$ ./sample4.py 2 その数が素数である。 $ ./sample4.py 3 その数が素数である。 $ ./sample4.py 4 2 $ ./sample4.py 5 その数が素数である。 $ ./sample4.py 99 3 9 11 33 $ ./sample4.py python Not a number. $
0 コメント:
コメントを投稿