我的思维过程是否正确?

时间:2014-02-27 16:35:26

标签: python for-loop tuples user-input multiplication

我的意见是:

  

预先计算每个可能乘法的值,从1 * 1到20 * 20(即2 * 1,3 * 1,4 * 1等等;然后是2 * 2,3 * 2,4 * 2等)在接受任何用户输入之前,将值存储在字典中。它还必须从字典中检索用户请求的值,而不是再次计算它。

我在考虑:

  1. 创建20x2矩阵或
  2. 创建一个从1:20开始的列表。
  3. 两个选项都将使用for循环来预先计算值。

    我们在课堂上看过元组,可以在这里应用吗?如果是这样,怎么样?

    请不要给我代码,除非你需要它来帮助解释

2 个答案:

答案 0 :(得分:2)

是的,元组适用于此。

这里不需要矩阵,只需要一个嵌套的for循环,比如i,另一个j。在循环中,您可以创建一个元组键((i, j))并将乘法结果存储在该键下的字典中:

multiplications[(i, j)] = i * j

甚至

multiplications[i, j] = i * j

因为括号在这里是可选的。

获取用户输入后,您可以查找这些结果:

result = multiplications[userinput1, userinput2]

答案 1 :(得分:1)

你最终会使用for循环,是的。如果你有这个想法,那么你就走在了正确的轨道上。您可能缺少的部分是您可以使用元组作为字典的键。所以像这样:

{(3, 4): 12} 

可以让您为该结果存储预先计算的值。这可能会让你到达你需要的地方。