日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程语言 > python >内容正文

python

没有bug队——加贝——Python 练习实例 3,4

發布時間:2025/3/15 python 27 豆豆
生活随笔 收集整理的這篇文章主要介紹了 没有bug队——加贝——Python 练习实例 3,4 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

3.題目:

一個整數,它加上100后是一個完全平方數,再加上168又是一個完全平方數,請問該數是多少?

程序分析:

假設該數為 x。

1、則:x + 100 = n2, x + 100 + 168 = m2

2、計算等式:m2?- n2?= (m + n)(m - n) = 168

3、設置: m + n = i,m - n = j,i * j =168,i 和 j 至少一個是偶數

4、可得: m = (i + j) / 2, n = (i - j) / 2,i 和 j 要么都是偶數,要么都是奇數。

5、從 3 和 4 推導可知道,i 與 j 均是大于等于 2 的偶數。

6、由于 i * j = 168, j>=2,則?1 < i < 168 / 2 + 1

7、接下來將 i 的所有數字循環計算即可。

注:求模運算,相當于mod,也就是計算除法的余數,比如5%3就得到2。

在if循環中,等號需要是 == 才是等于,不等于是!= ; range(1,3) = 1,2;

由6得1 < i <85,所以取值范圍為(1,85)

代碼:

for i in range(1,85):if 168 % i == 0:j = 168 / i;if i > j and (i + j) % 2 == 0 and (i - j) % 2 == 0 :m = (i + j) / 2n = (i - j) / 2x = n * n - 100print(x)

運行結果:

4.題目:

輸入某年某月某日,判斷這一天是這一年的第幾天?

程序分析:以3月5日為例,應該先把前兩個月的加起來,然后再加上5天即本年的第幾天,特殊情況,閏年且輸入月份大于2時需考慮多加一天

注:判斷是否滿足閏年需同時滿足三個條件哦,所以用 and 連接;輸出可以用函數format;

因為python索引從0開始,所以需要索引時 - 1 處理

代碼:

year = int(input('year:\n')) month = int(input('month:\n')) day = int(input('day:\n'))months = (0,31,59,90,120,151,181,212,243,273,304,334) if 0 < month <= 12:sum = months[month - 1] else:print ('日期錯誤') sum += day leap = 0 if (year % 400 == 0) or ((year % 4 == 0) and (year % 100 != 0)):leap = 1 if (leap == 1) and (month > 2):sum += 1 print ('{}年{}月{}日是今年的第{}天'.format(year,month,day,sum))

?輸出:

?

總結

以上是生活随笔為你收集整理的没有bug队——加贝——Python 练习实例 3,4的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。