Py学习  »  Python

5操作python计算器

Python • 5 年前 • 1372 次点击  

在这里,我实现了一个非常简单的计算器,只有5个操作。 有2个整数输入

代码旨在通过执行这些操作,输出从第一个输入到第二个输入的可能性(程序)的数量:

  • 将屏幕上的当前数字乘以2

  • 将屏幕上的当前数字乘以3

  • 在屏幕上的当前号码上加5

  • 在屏幕上的当前号码上加7

  • 取屏幕上当前数字的平方

一些测试代码

样本输入1:

2个
10个

样本输出1:

0个

样本输入2:


20个

样本输出2:

5个

样本输入3:

5个
100个

样本输出3:

34660个

问题是由于某种原因,我在测试样本3中得到了34658!我不知道我错在哪一部分

x = int(input())
y = int(input())

if x > 1 and y > x:
    num_of_programs = [None] * (y + 1)

    for i in range(x):
        num_of_programs[i] = 0

    num_of_programs[x] = 1

    for i in range(x + 1, y + 1):
        num_of_programs[i] = 0
        if i % 2 == 0 and i // 2 >= x:
            num_of_programs[i] += num_of_programs[i // 2]
        if i % 3 == 0 and i // 3 >= x:
            num_of_programs[i] += num_of_programs[i // 3]
        if i - 5 >= x:
            num_of_programs[i] += num_of_programs[i - 5]
        if i - 7 >= x:
            num_of_programs[i] += num_of_programs[i - 7]
        if i ** (1/2) == x:
            num_of_programs[i] += num_of_programs[int(i ** (1/2))]

    print(num_of_programs[y])
Python社区是高质量的Python/Django开发社区
本文地址:http://www.python88.com/topic/51592
 
1372 次点击  
文章 [ 2 ]  |  最新文章 5 年前