題目
- 1. 編程實現 9*9乘法表(循環嵌套的復習)。
- 2. 用函數實現求100-200里面所有的素數。
- 3. 請用函數實現一個判斷用戶輸入的年份是否是閏年的程序。
- 4.題目需求:對于一個十進制的正整數, 定義f(n)為其各位數字的平方和
- 5.題目描述:給定一個正整數,編寫程序計算有多少對質數的和等于輸入的這個正整數,并輸出結果。輸入值小于1000。
1. 編程實現 9*9乘法表(循環嵌套的復習)。
for i in range(1, 10):
print()
for j in range(1, i + 1):
print('%dx%d=%.2d' % (j, i, j * i), end=' ')
2. 用函數實現求100-200里面所有的素數。
def prime(x, y):
result = []
for i in range(x, y+1):
for j in range(2, i):
if i % j == 0:
break
else:
result.append(i)
return result
x = int(input('x:'))
y = int(input('y:'))
result = prime(x, y)
print('%d到%d之間的素數有:' % (x, y), result)
3. 請用函數實現一個判斷用戶輸入的年份是否是閏年的程序。
def ifYears(year):
if (year % 4 == 0 and year%100 != 0) or year%400 == 0:
return '%d是閏年' % year
else:
return '%d不是閏年' % year
year = int(input('請輸入年份:'))
print(ifYears(year))
4.題目需求:對于一個十進制的正整數, 定義f(n)為其各位數字的平方和
如:
f(13) = 1^2 + 3^2 = 10
f(207) = 2^2 + 0^2 + 7^2 = 53
下面給出三個正整數k,a, b,你需要計算有多少個正整數n滿足a<=n<=b,且k*f(n)=n
輸入: 第一行包含3個正整數k,a, b, k>=1, a,b<=10**18, a<=b;
輸出:輸出對應的答案;
范例:
輸入: 51 5000 10000
輸出: 3
def f(uInt):
sum = 0
while uInt:
sum += (uInt % 10) ** 2
uInt = uInt // 10
return sum
def compute(k, a, b):
flag = 0
for n in range(a, b):
if k * f(n) == n:
flag += 1
return flag
k = int(input('k:'))
a = int(input('a:'))
b = int(input('b:'))
print(compute(k, a, b))
5.題目描述:給定一個正整數,編寫程序計算有多少對質數的和等于輸入的這個正整數,并輸出結果。輸入值小于1000。
如,輸入為10, 程序應該輸出結果為2。(共有兩對質數的和為10,分別為(5,5),(3,7))
輸入描述: 輸入包括一個整數n,(3 ≤ n < 1000)
輸出描述: 輸出對數
示例1 :
輸入: 10
輸出: 2
def prime(n):
result = []
for i in range(2, n+1):
for j in range(2, i):
if i % j == 0:
break
else:
result.append(i)
return result
num = int(input("N:"))
primeList = prime(num)
print(primeList)
count = 0
for i in primeList:
if (num - i) in primeList and i <= num-i:
count += 1
print(count)
更多文章、技術交流、商務合作、聯系博主
微信掃碼或搜索:z360901061

微信掃一掃加我為好友
QQ號聯系: 360901061
您的支持是博主寫作最大的動力,如果您喜歡我的文章,感覺我的文章對您有幫助,請用微信掃描下面二維碼支持博主2元、5元、10元、20元等您想捐的金額吧,狠狠點擊下面給點支持吧,站長非常感激您!手機微信長按不能支付解決辦法:請將微信支付二維碼保存到相冊,切換到微信,然后點擊微信右上角掃一掃功能,選擇支付二維碼完成支付。
【本文對您有幫助就好】元
