開発環境
- OS X Mavericks - Apple(OS)
- Emacs (CUI)、BBEdit - Bare Bones Software, Inc. (GUI) (Text Editor)
- Python (プログラミング言語)
初めてのコンピュータサイエンス(Jennifer Campbell、Paul Gries、Jason Montojo、Greg Wilson(著)長尾 高弘(翻訳))の7章(反復)、7.7(練習問題)、7、8、9、10.を解いてみる。
7.7(練習問題)、7、8、9、10.
コード(BBEdit)
sample.py
#!/usr/bin/env python3.3 #-*- coding: utf-8 width = 7 print('7.') for n in range(1, 8): print('{0}'.format(('T' * n).ljust(width))) print('8.') for n in range(1, 8): print('{0}'.format(('T' * n).rjust(width))) print('9.') n = 1 while n <= 7: print('{0}'.format(('T' * n).ljust(width))) n += 1 n = 1 while n <= 7: print('{0}'.format(('T' * n).rjust(width))) n += 1 print('8.') print('a.') import random rat_1_weight = random.randint(1, 10) rat_1_rate = 4 / 100 week = 0 new_weight = rat_1_weight while new_weight <= rat_1_weight * 125 / 100: new_weight = new_weight * (1 + rat_1_rate) week += 1 print('元の体重: {0}, {1}週間後の体重: {2}'.format( rat_1_weight, week, new_weight)) print('b.') rat_1_weight = 10 rat_2_weight = 10 rat_2_rate = 4 / 100 rat_1_rate = rat_2_rate + 3 / 100 week = 0 while rat_1_weight <= rat_2_weight * (110 / 100): rat_1_weight *= (1 + rat_1_rate) rat_2_weight *= (1 + rat_2_rate) week += 1 print('week: {0}, rat_1_weight: {1:g}, rat_2_weight: {2:g}'.format( week, rat_1_weight, rat_2_weight))
入出力結果(Terminal)
$ ./sample.py 7. T TT TTT TTTT TTTTT TTTTTT TTTTTTT 8. T TT TTT TTTT TTTTT TTTTTT TTTTTTT 9. T TT TTT TTTT TTTTT TTTTTT TTTTTTT T TT TTT TTTT TTTTT TTTTTT TTTTTTT 8. a. 元の体重: 9, 6週間後の体重: 11.387871166464 b. week: 4, rat_1_weight: 13.108, rat_2_weight: 11.6986 $
0 コメント:
コメントを投稿