C语言经典100例(Python版本)081-085
'''
【程序81】
题目:809*??=800*??+9*??+1 其中??代表的两位数,8*??的结果为两位数,9*??的结果为3位数。求??代表的两位数,及809*??后的结果。
1.程序分析:
2.程序源代码
这个程序实在是奇怪
0 = 1 :(
就写个程序而已,不去追究了
'''
a = 809
for i in range(10,100):
b = i * a + 1
if b >= 1000 and b = 10000 and 8 * i 100 and 9 * i >= 100:
print b,'/',i,' = 809 * ',i,' + ', b % i
'''
【程序82】
题目:八进制转换为十进制
1.程序分析:
2.程序源代码:
'''
if __name__ == '__main__':
n = 0
p = raw_input('input a octal number:\n')
for i in range(len(p)):
n = n * 8 + ord(p) - ord('0')
print n
'''
【程序83】
题目:求0—7所能组成的奇数个数。
1.程序分析:
2.程序源代码:
'''
if __name__ == '__main__':
sum = 4
s = 4
for j in range(2,9):
print sum
if j = 2:
s *= 7
else:
s *= 8
sum += s
print 'sum = %d' % sum
'''
【程序84】
题目:一个偶数总能表示为两个素数之和。
1.程序分析:
2.程序源代码:
此代码有问题,待修改
'''
import math
if __name__ == '__main__':
a = int(raw_input('input an odd number:\n'))
d = 0
c = 2
for b in range(3,a / 2 + 1,2):
m = 0
for c in range(2,int(math.sqrt(b)) + 1):
if b % c == 0 :
m = c
break
if m > math.sqrt(b):
d = a - b
else:
break
for c in range(2,int(math.sqrt(d)) + 1):
if d % c == 0:
m = c
break
if m > math.sqrt(d):
print '%d = %d + %d' % (a,b,d)
'''
【程序85】
题目:判断一个素数能被几个9整除
1.程序分析:
2.程序源代码:
'''
if __name__ == '__main__':
zi = int(raw_input('input a number:\n'))
n1 = 1
c9 = 1
m9 = 9
sum = 9
while n1 != 0:
if sum % zi == 0:
n1 = 0
else:
m9 *= 10
sum += m9
c9 += 1
print '%d can be divided by %d 9' % (sum,c9)