我有一个简单的问题,但很难想出一个优雅的解决方案。
假设我的应用程序显示一副纸牌。每次我抽一张牌,我都想把它显示在屏幕的中央。当我绘制一张新卡时,我想将该卡显示在前一张卡旁边并且都居中。
更具体地说,如果我的代码具有以下变量和表
N = 打出的牌总数。假设 N 在 1 到 10 之间。
W = 以像素为单位分隔每张卡片的宽度。例如 30 像素
C = 屏幕宽度 / 2(屏幕中心 x 值)
P = {} - 表示卡片的位置,它是新的 X 值。P[1] 将是打出的第一张牌的 x 值。
我想要一个公式,这样我就可以运行一个循环并计算每张卡的新 X 值。
这是我的预期输出
N = 1, P[1] = C. 如果只有 1 张卡片,则该卡片的 x 值为中心
N = 2,P[1] = C - W/2,P[2] = C + W/2
N = 3,P[1] = C - W,P[2] = C,P[3] = C + W
N = 4, P[1] = C - 3/2 * W, P[2] = C - 1/2 * W, P[3] = C + 1/2 * W, P[4] = C + 3/2 * 宽
所以我需要一个以编程方式为我计算的循环。不知道该怎么做。