习题 来自百度贴吧

http://tieba.baidu.com/p/3407986942

  

解答如下:

第一题:

#!/usr/bin/env python
# -*- coding:utf-8 -*-
# 日本数学家谷角静夫在研究自然数时发现了一个奇怪现象:对于任意一个自然数 n,
# 若 n 为偶数,则将其除以 2;若 n 为奇数,则将其乘以 3,然后再加 1。如此经过有限次
# 运算后,总可以得到自然数 1。人们把谷角静夫的这一发现叫做“谷角猜想”。请你编写一
# 个程序,由键盘输入一个自然数 n,把 n 经过有限次运算后,最终变成自然数 1 的全过程
# 打印出来。

def Conjecture(n):
    c = 0
    while n != 1:
        c += 1
        if n % 2 == 0:
            n = int(n/2)
            print "此时N为偶数,第%d次变换结果是%d" % (c,n)
        else:
            n = n * 3 + 1
            print "此时N为奇数,第%d次变换结果是%d" % (c,n)
    return c

n = int(input("请输入任意自然数N:	"))
print "此时其谷角猜想的变换过程如下:"
k = Conjecture(n)
print "该数共经过%d的变换,得到自然数1" %(k)

第二题:

#!/usr/bin/env python
# -*- coding:utf-8 -*-
# 从报纸中抽出一张,对折,再对折,继续对折。可以把它折叠 30 次吗?假设可以(你
# 可能无法把它折叠 8 次以上)折叠 30 次,请问厚度是多少?假设纸的厚度是 1/200 厘米。
# 编程程序来解决这个难题。提示用户输入折叠次数,输后最终的厚度,以米为单位。
#获取单个纸张的厚度

def double_p(n):
    paper_th = float(1.0 / 200 / 100)
    for i in xrange(n):
        paper_th  *= 2
    return paper_th
print double_p(30)

第三题:

#!/usr/bin/env python
# -*- coding:utf-8 -*-
#A(n,m) = n! / (n-m)!
def Factorial(n):
    k = 1
    if n == 0:
        return 1
    else:
        for i in xrange(1,n+1):
            k *= i
    return k
result = (Factorial(10) / Factorial(8)) * (Factorial(8) / Factorial(7)) * (Factorial(7) / Factorial(6))
print "不同的算法有%d" % (result)

第四题:

#!/usr/bin/env python
# -*- coding:utf-8 -*-
def js(salary,sst):
    tax_free = 3500
    pay_rate = salary - 3500 - sst
    if pay_rate <= 1500:
        rate = 0
    elif 1500 < pay_rate <= 4500:
        rate = pay_rate * 0.1
    elif 4500 < pay_rate <= 9000:
        rate = pay_rate * 0.2
    elif 9000 < pay_rate <= 35000:
        rate = pay_rate * 0.25
    elif 35000 < pay_rate <= 55000:
        rate = pay_rate * 0.30
    elif 55000 < pay_rate <= 80000:
        rate = pay_rate * 0.35
    elif pay_rate > 80000:
        rate = pay_rate * 0.45
    return rate
salary = float(raw_input("Input your salary:	"))
sst = float(raw_input("Input your 保险费用:	"))
rate = js(salary,sst)
print "应交税%f" %(rate)
原文地址:https://www.cnblogs.com/sageskr/p/4096082.html