開発環境
- 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 コメント:
コメントを投稿