【python學習日記】實例——隨機數生成、判斷閏年、階乘實例

生成隨機數

random.randint(a,b)函數返回數字 N ,N 為 a 到 b 之間的數字(a <= N <= b)

import random

a = random.randint(0,9)

b = random.randint(0,9)

sum = a+b

print('%d與%d相加為%d'%(a,b,sum))

判斷閏年

import random

year = random.randint(1980,2018)

if (year %4) ==0:

????if (year %100) ==0:

????????if (year %400) ==0:

????????????print("{0} 是閏年".format(year))# 整百年能被400整除的是閏年

????????else:

????????????print("{0} 不是閏年".format(year))

????else:

????????print("{0} 是閏年".format(year))# 非整百年能被4整除的為閏年

else:

print("{0} 不是閏年".format(year))

質數判斷:一個大于1的自然數,除了1和它本身外,不能被其他自然數(質數)整除(2, 3, 5, 7等),換句話說就是該數除了1和它本身以外不再有其他的因數。

import random

num = random.randint(5,90)

if num >1:

????for iin range(2, num):

????????if (num % i) ==0:

????????????print(num,"不是質數")

????????????print(i,"乘于", num // i,"是", num)

????????????break

????else:

????????print(num,"是質數")

else:

????print(num,"不是質數")

階乘是所有小于及等于該數的正整數的積,0的階乘為1。即:n!=1×2×3×...×n。

import random

num = random.randint(-9,9)

a =1

# 查看數字是負數,0 或 正數

if num <0:

????print("%d 沒有階乘" % num)

elif num ==0:

????print("0 的階乘為 1")

else:

????for iin range(1, num +1):

????????a = a * i

????print("%d 的階乘為 %d" % (num, a))

九九乘法表

for iin range(1,10):

????for jin range(1, i+1):

????????print('{}x{}={}\t'.format(i, j, i*j),end='')

????print()

斐波那契數列:從第三項開始,每一項都等于前兩項之和。?0, 1, 1, 2, 3, 5, 8, 13

import random

nterms = random.randint(1,20)

print('隨機生成需要的第%d項'%nterms)

n1 =0

n2 =1? # 第一和第二項

count =2

if nterms ==1:

????print("斐波那契數列:")

????print(n1)

else:

????print("斐波那契數列:")

????print(n1,",", n2,end=" , ")

????while count < nterms:

????????nth = n1 + n2

????????print(nth,end=" , ")

????????n1 = n2# 更新值

????????n2 = nth

????????count +=1

阿姆斯特朗數

如果一個n位正整數等于其各位數字的n次方之和,則稱該數為阿姆斯特朗數。 例如1^3 + 5^3 + 3^3 = 153。1000以內的阿姆斯特朗數: 1, 2, 3, 4, 5, 6, 7, 8, 9, 153, 370, 371, 407。

import random

num = random.randint(1,1000)

sum =0

n =len(str(num))

temp = num

while temp >0:

????digit = temp %10

????sum += digit ** n

????temp //=10

if num == sum:

????print(num,"是阿姆斯特朗數")

else:

????print(num,"不是阿姆斯特朗數")

簡單計算器實現(兩個數基本的加減乘除)

def add(x, y):

????return x + y

def subtract(x, y):

????return x - y

def multiply(x, y):

????return x * y

def divide(x, y):

????return x / y

# 用戶輸入

print("選擇運算:")

print("1、相加")

print("2、相減")

print("3、相乘")

print("4、相除")

choice =input("輸入你的選擇(1/2/3/4):")

num1 =int(input("輸入第一個數字: "))

num2 =int(input("輸入第二個數字: "))

if choice =='1':

????print(num1,"+", num2,"=", add(num1, num2))

elif choice =='2':

????print(num1,"-", num2,"=", subtract(num1, num2))

elif choice =='3':

????print(num1,"*", num2,"=", multiply(num1, num2))

elif choice =='4':

????print(num1,"/", num2,"=", divide(num1, num2))

else:

????print("非法輸入")

獲取最大值函數print(max(1, 2))

最后編輯于
?著作權歸作者所有,轉載或內容合作請聯系作者
平臺聲明:文章內容(如有圖片或視頻亦包括在內)由作者上傳并發布,文章內容僅代表作者本人觀點,簡書系信息發布平臺,僅提供信息存儲服務。

推薦閱讀更多精彩內容

  • 〇、前言 本文共108張圖,流量黨請慎重! 歷時1個半月,我把自己學習Python基礎知識的框架詳細梳理了一遍。 ...
    Raxxie閱讀 19,084評論 17 410
  • 個人學習批處理的初衷來源于實際工作;在某個迭代版本有個BS(安卓手游模擬器)大需求,從而在測試過程中就重復涉及到...
    Luckykailiu閱讀 4,782評論 0 11
  • 5Python集合容器 數據結構數據結構 一般將數據結構分為兩大類: 線性數據結構和非線性數據結構。 線性數據結構...
    清清子衿木子水心閱讀 1,545評論 0 1
  • 我從來不知道有一天我家貓會和老鼠每天膩在一起。 貓小姐從小便很怕老鼠,聽她媽媽說貌似小時候被老鼠打...
    睡不醒_e30c閱讀 162評論 0 0
  • 大家晚上好!我是21天訓練營2組的組長高魯魯,很榮幸能作為組長代表講話。 每個小組里都有多優秀的學員,和因各種原因...
    百思方成Helen閱讀 199評論 0 0