for i in range(1,10): #印直行
for j in range(1,10): #印橫行
print("%3d" %(i*j),end=' ')
print()
1 2 3 4 5 6 7 8 9
2 4 6 8 10 12 14 16 18
3 6 9 12 15 18 21 24 27
4 8 12 16 20 24 28 32 36
5 10 15 20 25 30 35 40 45
6 12 18 24 30 36 42 48 54
7 14 21 28 35 42 49 56 63
8 16 24 32 40 48 56 64 72
9 18 27 36 45 54 63 72 81
---------------------- 9-2 費氏數列
a,b=0,1
print(a,b,end=' ')
n=1000
while a+b<n:
c=a+b
print(c,end=' ')
a=b
b=c
print()
0 1 1 2 3 5 8 13 21 34 55 89 144 233 377 610 987
---------------------- 9-3 猜數字遊戲
import random
c=0;guess=0;play='y'
n=random.randint(1,100)
while (guess != n) and ((play != 'y') or (play != 'Y')):
guess=int(input("請輸入 (1~100) ?"))
c=c+1
if (guess >n):
print("too big")
elif(guess<n):
print("too small")
else:
play=input("你猜對了,要繼續ㄇ(Y/N)?")
if (play=='n') or (play == 'N'):
break
n=random.randint(1,100)
c=0
print("你已經猜了:",c,"次")
print(" 答案是:",n)
---------------------- 9-4 最大公因數 GCD
x=12;y=18
if(x>y):
x,y=y,x
m=x;x=y
while(m>0):
y=x;x=m;m=y%x
print(x)
6
---------------------- 9-5 數制轉換 十進制 轉 二進、八進、 十六進
def numsys(dec,ns):
n=dec
x=''
hstr="0123456789ABCDEF"
if (n==0):
x='0'
while(n>0):
x=hstr[(n%ns):(n%ns)+1]+x
n= n//ns
return x
dec=18
print("十進制:",dec,":")
print("二進制=",numsys(dec,2))
print("八進制=",numsys(dec,8))
print("十六進制=",numsys(dec,16))
十進制: 18 :
二進制= 10010
八進制= 22
十六進制= 12
*********2024/03/28
def NumSys(dec,NS):
RtnS=""
AllStr="0123456789ABCDEF"
if dec==0:RtnS="0"
while dec>0:
RtnS=AllStr[dec%NS:(dec%NS)+1]+RtnS
dec=dec//NS
return RtnS
N=int(input("請輸入任一大於0正整數:"))
print(str(N)+ " 的 二 進制=",NumSys(N,2))
print(str(N)+ " 的 八 進制=",NumSys(N,8))
print(str(N)+ " 的 十六進制=",NumSys(N,16))
請輸入任一大於0正整數:18
18 的 二 進制= 10010
18 的 八 進制= 22
18 的 十六進制= 12
沒有留言:
張貼留言