# 題目:AABB為一個四位數,且是一個數字的平方,
# 試求形如AABB這樣的四位數?
#解法1
for i in range(1,9):
for j in range(0,10):
if(((1000*i+100*i+10*j+j)**(1/2)%1)==0):
print(1000*i+100*i+10*j+j)
# 題目:AABB為一個四位數,且是一個數字的平方,
# 試求形如AABB這樣的四位數?
#解法1
for i in range(1,9):
for j in range(0,10):
if(((1000*i+100*i+10*j+j)**(1/2)%1)==0):
print(1000*i+100*i+10*j+j)
#解法2
for i in range(32,100):
a=(i*i)//1000
b=((i*i)-1000*a)//100
c=(i*i-1000*a-100*b)//10
d=i*i-1000*a-100*b-10*c
if (a==b and c==d):
print(i*i)
#蒙地卡羅模擬法,是基於大數法則的實證方法,當實驗的次數越多,其平均值也就會越趨近於理論值。
import matplotlib.pyplot as plt
import numpy as np
import random
plt.figure(figsize=(8,8),dpi=80)
t = np.linspace(0,0.5*np.pi,100)
x=np.cos(t)
y=np.sin(t)
plt.plot(x,y,color="green",linewidth=5)
N=2000
count=0 #計數
for i in range(1,N+1):
x=random.random() #輸出0-1之間的隨機數
y=random.random()
# print ("(",x,",",y,")")
if (x*x+y*y<=1):
count=count+1
plt.scatter(x,y,color="red",linewidth=1)
else:
plt.scatter(x,y,color="white",linewidth=1)
print("估計值=",count/N)
print("理論值=",np.pi/4)
plt.xlim(0, 1)
plt.ylim(0, 1)
plt.show()
估計值= 0.7915 理論值= 0.7853981633974483