# -*- coding: cp936 -*- #enconding: utf-8 ######################################################## #打印99乘法表 ######################################################## def gen(line_cnt): for i in range(1,line_cnt+1): for j in range(1,i+1): m=i*j print '%s*%s=%s\t' %(i,j,m), print '' if __name__== '__main__': gen(9) ######################################################### #求可用被17整除的所有三位數 for num in range(99,1000): if num % 17 == 0: print num ########################################################## #寫一個程序,提示輸入整數X,然后計算從1到X連續整數的和 sum = 0 x = int (raw_input ('pls input x: ')) #輸入函數 for num in range(0,x): sum += num print sum ########################################################### #改寫上面的計算過程,循環嵌套計算連續的和 x = int(raw_input('please input x : ' )) layer = 1 while layer <= x: lsum = 0 count =1 while count <=layer: lsum += count count += 1 fstr = '' for num in range(1 , layer ): fstr = fstr + str(num) + '+' fstr += str(layer) print fstr,'=',lsum layer += 1 # 如何控制空格的數量讓等號在一起呢 ############################################################################# #題目:有1、2、3、4個數字,能組成多少個互不相同且無重復數字的三位數?都是多少? cnt = 0#count the sum of result for i in range(1,5): for j in range(1,5): for k in range(1,5): if i!=j and i!=k and j!=k: print i*100+j*10+k cnt+=1 print cnt """ 題目:企業發放的獎金根據利潤提成。利潤(I)低於或等於10萬元時,獎金可提10%; 利潤高於10萬元,低於20萬元時,低於10萬元的部分按10%提成,高於10萬元的部分, 可可提成7.5%;20萬到40萬之間時,高於20萬元的部分,可提成5%; 40萬到60萬之間時高於40萬元的部分,可提成3%;60萬到100萬之間時, 高於60萬元的部分,可提成1.5%,高於100萬元時,超過100萬元的部分按1%提成, 從鍵盤輸入當月利潤I,求應發放獎金總數? """ i = int(raw_input('Enter the profit:')) arr = [1000000,600000,400000,200000,100000,0] rat = [0.01,0.015,0.03,0.05,0.075,0.1] r = 0 for idx in range(0,6): if i>arr[idx]: r+=(i-arr[idx])*rat[idx] print (i-arr[idx])*rat[idx] i=arr[idx] print r #題目:一個整數,它加上100后是一個完全平方數,再加上168又是一個完全平方數,請問該數是多少? import math num = 1 while True: if math.sqrt(num + 100)-int(math.sqrt(num + 100)) == 0 and math.sqrt(num + 268)-int(math.sqrt(num + 268)) == 0: print(num) break num += 1 #題目:輸入某年某月某日,判斷這一天是這一年的第幾天? #author: 叛軍 import datetime import time dtstr = str(raw_input('Enter the datetime:(20151215):')) dt = datetime.datetime.strptime(dtstr, "%Y%m%d") another_dtstr =dtstr[:4] +'0101' another_dt = datetime.datetime.strptime(another_dtstr, "%Y%m%d") print (int((dt-another_dt).days) + 1) ##古典問題:有一對兔子,從出生后第3個月起每個月都生一對兔子,小兔子長到第三個月 ###后每個月又生一對兔子,假如兔子都不死,問每個月的兔子總數為多少? a = 1 b = 1 for i in range(1,21,2): print '%d %d'%(a,b), a += b b += a ###題目:判斷101-200之間有多少個素數,並輸出所有素數。 #!/usr/bin/python #-*- coding:utf-8 -*- from math import sqrt def main(): for i in range(101,201): flag = 1 k = int(sqrt(i)) for j in range(2,k+1): if i%j == 0: flag = 0 break if flag == 1: print '%5d'%(i), if __name__ == "__main__": main() #題目:打印出所有的“水仙花數”,所謂“水仙花數”是指一個三位數,其各位數字立方和等於該數本身。例如:153是一個“水仙花數”,因為153=1的三次方+5的三次方+3的三次方。 #!/usr/bin/python #-*- coding:utf-8 -*- def main(): for i in range(100,1000): a = i%10 b = i/100 c = (int(i/10))%10 if i == a**3+b**3+c**3: print "%5d"%(i), if __name__ == "__main__": main()