配布プリント(2)

Python 配布プリント (2) 9 May 2016 by 水谷正大
http://www.ic.daito.ac.jp/~mizutani/python/index.html
以下のスクリプトを適切なファイル名の下で実行し、その結果を人間計算機として「完璧に」説明しなさい
■条件分岐 [if 構文]
x = 13
if x > 7:
print "Do you see this"
print "Congratulation!"
[if-else 構文]
x = 5
if x > 7:
print "Do you see this"
print "Congratulation!"
else:
print "Oops :-("
print "See you next time"
[if-elif-else 構文]
x = 5
if x > 7:
print "Do you see this"
print "Congratulation!"
elif x == 3:
print "Great!"
print "You are lucky!"
elif x == 4 or x == 5:
print "Fine!"
else:
print "Oops :-("
print "See you next time"
■論理式(論理値 True / False を返す式)
[比較演算] より小さい <, 以下 < =, 大きい >, 以上 >=, 不一致 !=
x = 3
y = 5
print x != 5
[辞書式順序]
x = "Apple"
y = "Apple1"
z = "apple"
print x < y, x < z, y < z
[比較演算] かつ and, または or, 否定 not
1
x = 3
y = 5
z = 7
print not x > y
print x > y and x < z
print x > y or x < z
print not (x > y or x < z)
print (x > y or x < z) and (x > z)
x = 3
y = "3"
print x == y
[重要] キーボード入力を使う
x = 3
y = raw_input("input only 3 from keyboard(and return) =
")
print x == y
[重要] 数字文字列の整数への変換
x = 3
y = raw_input("Input only 3 from keyboard(and return) =
")
y = int(y)
print x == y
x = int(raw_input("Input integer x =
"))
y = int(raw_input("Input integer y =
"))
z = int(raw_input("Input integer z =
"))
print not x > y
print x > y and x < z
print x > y or x < z
print not (x > y or x < z)
print (x > y or x < z) and (x > z)
[問題 1] キーボードから入力した 2 つの数 m, n (暗に m < n となるように入力)について、m + (m + 1) +
. . . + (n − 1) + n を計算するスクリプトを書いて、実行しなさい。ただし実行結果において、たとえば
Input m = 10
Input n = 100
Sum from
10
to
100 = 5005
となるようになど、何を行っているか使う者が理解しやすいように書け(常にそのよう「優しい配慮」を工夫、
努力することが実用性を向上させる)。
[問題 2] [問題 1] のように入力した 2 つの整数 m, n について暗黙の了解を仮定せずに、入力した 2 数のう
ちの小さい数から大きな数までの総和を計算するようにスクリプトを書いて実行しなさい。2 整数が等しいと
きは総和は m または n になることは使ってもよい。
2