这些整数结果有什么功能?

Dav*_*usa 0 python modular-arithmetic

例如,我有一个参考编号a = 15b= 3.

  • 如果x=2,f(a,b,x) = 1因为如果将15分成3部分,则数字2在第一部分中.
  • 如果x=7,f(a,b,x) = 2因为如果将15分成3部分,则数字7在第二部分中.
  • 如果x=15,f(a,b,x) = 3因为如果将15分成3部分,则数字15在第3部分中.
  • 如果x <0或> 15,结果与我无关.

有这样的内置功能吗?

NPE*_*NPE 7

我想不出一个能做到这一点的内置函数.然而,编写一个并不困难:

def f(a, b, x):
  return (x - 1) * b // a + 1

for i in range(1, 16):
  print i, f(15, 3, i)
Run Code Online (Sandbox Code Playgroud)

打印出来

1 1
2 1
3 1
4 1
5 1
6 2
7 2
8 2
9 2
10 2
11 3
12 3
13 3
14 3
15 3
Run Code Online (Sandbox Code Playgroud)

(关于如何以及是否x=0需要处理的问题并不完全清楚;这个答案认为它超出了有效范围.)