質問: sum_squares(5, 12) ``` ### 補足情報(言語/FW/ツール等のバージョンなど) Python 3.4.3
回答: sum_squares(5, 12) と指定していますので、 sum_squares(x, y) の方では x が 5、y が 12 になります。 これをその次の add に当てはめると以下のようになります。 add(square(5), square(12)) 次にこのsquare(5)の方を受け取る square(x) の方は x が5になります。 (ここの x は sum_squares のx とは別物です) これを mul に当てはめると以下のようになります。 mul(5, 5) これで 25 が返ります。 同様に square(12) を mul に当てはめると以下のようになります。 mul(12, 12) これで 144 が返ります。 ここで add(square(5), square(12)) に戻ると square(5) は 25, square(12) は 144 が返るのでaddに当てはめると add(25,144) になり、この結果、169 が返ります。