ロジカ式logo

はじめての
Python

ページ一覧に戻る
応用問題8 変数の交換
交換
問題1
  •   次の2つの変数の値を入れ替えて、入れ替える前と入れ替えた後の値を表示してください。
  • ・始めの値:a=5 b=10
  • ・交換後:a=10 b=5
ロボた

一時的に値を置いておくための変数tempを作って、そこにaをいったん格納するといいね。

tempのような変数のことを、プログラミングで「退避用変数たいひようへんすう」と呼ぶよ!

ロボち
ロボた

その後、aにbの値を代入するんだね!

bにtempの値を入れると交換ができるね!

ロボち
PRACTICE

📖 解答例と解説

a = 5
b = 10

#交換前の値を表示
print("始めの値")
print("a =", a)
print("b =", b)

#入れ替える
temp = a
a = b
b = temp

#交換後を表示
print("交換後")
print("a =", a)
print("b =", b)
ロボた

この部分が大事だね。

#入れ替える
temp = a
a = b
b = temp

この方法は後の問題でも使うよ!

ロボち

問題2
  •   次のリストの要素を入れ替えて以下のように表示してください。
  • ・交換前のリスト:[1, 2, 3, 4, 5]
  • ・交換後のリスト:[1, 4, 3, 2, 5]
ロボた

こんどは、リストの要素の交換だね。さっきと同じように考えればいいね!

リストの2番目と4番目の要素を交換すればいいんだね!

ロボち
PRACTICE

📖 解答例と解説

my_list = [1, 2, 3, 4, 5]
i = 1
j = 3
#交換前のリストの表示
print("交換前のリスト:", my_list)
#交換実行
temp = my_list[i]
my_list[i] = my_list[j]
my_list[j] = temp
#交換後のリストの表示
print("交換後のリスト:", my_list)
ロボた

最初に「i」と「j」を決めたのは、その値を変えれば好きな二つを交換できるからなんだ。

リストのインデックス番号に「i」や「j」を使うと順に比べるときなどに便利だね。

ロボち