美文网首页
用python解中考数学规律题

用python解中考数学规律题

作者: 天使猿ty | 来源:发表于2018-12-29 15:36 被阅读0次

    以下为2018成都市的中考数学真题B卷第23题:


    image.png

    分析:
    一、这是一道常规的找规律考题,一般每年的中考数学都会涉及。根据题的难易程度,位置一般会出现在B卷的第二题,以填空的方式出现。
    二、这一道题在一般的规律题的基础上加入了两个点,
      ①牵涉到简单的整式运算。
      ②用S1,S2,S3,S4,S5......分别来表示每一项,有误导考生将其与等差等比数列的前n项和中的“Sn”混淆的动机,以增大考题难度。
      ③单项表达式需要依赖上一项的结果,加大考题难度
    三、常规解题思路:
      第一步:根据第一项表达式,分别计算出后面每一项的表达式,直到发现规律
      第二步:分析规律,总结规律,根据规律求出目标项

    具体操作:
      ①分别求出前面的每一项

    S2 = -s1-1 = -(1/a)-1 = -(a+1)/a
    S3 = 1/s2 = -a/(a+1)
    S4 = -s3-1 = a/(a+1) -1 = -1/(a+1)                          初见端倪
    S5 = 1/s4 = -(a+1) = -a-1                                   有点意思
    S6 = -s5-1 = -(-a-1)-1 = a                                  若隐若现
    S7 = 1/s6 = 1/a                                             恍然大悟
    S8 = ....
    

      ②分析规律

    • 很明显:
      第8项为: -(a+1)/a,第9项为: -a/(a+1),第10项为:-1/(a+1),第11项......即后面项的表达式均为前6项的循环。
    • 以此类推,要求出2018项,只需要确定出2018项在循环的过程中处于前六项的哪一项即可。
    • 方法:2018除6再取余,余数为2,则说明循环完若干轮后还落单了两次,对照前六次中,第二项为-(a+1)/a,故答案即为-(a+1)/a

    接下来我们用程序来实现:
    方法一:
    为了模拟运算2018次,故我们最外层用while实现不停地去循环,while里面则用for遍历这重复的六个结果。

    # 第一步:将前六项依次存入my_list列表
    my_list = ['1/a', '-(a+1)/a', '-a/(a+1)', '-1/(a+1)', '-a-1', 'a']
    # 根据目标项数定位到my_list中的对应项
    cnt = 0
    flag = 0
    while True:
        for k in my_list:
            cnt += 1
            if cnt == 2018:
                flag = 1
                print(k)
                print('遍历了{}次'.format(cnt))
                break
        if flag == 1:
            break
    

    效果:


    image.png

    这种方法虽是真实的模拟了2018次循环遍历,但着实麻烦,接下来我们用取模(即取余数)的方式来实现以上功能。
    方法二:

    # 第一步:将前六项依次存入my_list列表
    my_list = ['1/a', '-(a+1)/a', '-a/(a+1)', '-1/(a+1)', '-a-1', 'a']
    # 根据目标项数定位到my_list中的对应项
    cnt = 0
    for i, v in enumerate(my_list):
        cnt += 1
        if i == 2018 % 6 - 1:
            print(v)
            print('遍历了{}次'.format(cnt))
            break
    

    效果:


    image.png

    怎么样,瞬间省去了2016次运算,而且代码也精简了,是不是很酷。
    但我们的计算机可是最不怕辛苦了,而且最擅长的就是重复的去做运算,所以,遇到类似的数学题,我们还可以丢给计算机。

    相关文章

      网友评论

          本文标题:用python解中考数学规律题

          本文链接:https://www.haomeiwen.com/subject/wttplqtx.html