国产日韩欧美一区二区三区综合,日本黄色免费在线,国产精品麻豆欧美日韩ww,色综合狠狠操

極客小將

您現在的位置是:首頁 » python編程資訊

資訊內容

Python 基礎練習實例3(找數字)

極客小將2020-11-12-
一個整數,它加上100后是一個完全平方數,再加上168又是一個完全平方數,請問該數是多少?

題目:一個整數,它加上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,168是偶數,可推斷i 和 j 至少一個是偶數

4、再由上一步的算式可得: m = (i + j) / 2, n = (i - j) / 2,因為m、n都是整數,所以i+j與i-j都是偶數,則i 和 j 要么都是偶數,要么都是奇數。

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

6、由于 i * j = 168,i與j同正或者同負,且不等于0, j>=2,則 1 < i < 168 / 2 + 1 或 j<=-2,則 -1 > i > 168 / -2 - 1。

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

程序源代碼:實例(Python 2.0+)


#!/usr/bin/python

# -*- coding: UTF-8 -*-

for i in range(-85, 85):

   if i == 0:  

       continue

   if 168 % i == 0:

       j = 168 / i

       if i > j and (i + j) % 2 == 0 and (i - j) % 2 == 0:

           print (i)

           m = (i + j) / 2

           n = (i - j) / 2

           x = n * n - 100

           print (x)

           print ('-----------------------')

運行結果如下:

Python 基礎練習實例3

本站部分內容轉載自網絡,如有侵權請聯系管理員及時刪除。

預約試聽課

已有385人預約都是免費的,你也試試吧...

主站蜘蛛池模板: 望奎县| 垫江县| 南投市| 长治县| 尖扎县| 灵石县| 祁阳县| 桓仁| 绥宁县| 阜宁县| 当涂县| 长武县| 武清区| 洛扎县| 格尔木市| 古浪县| 邹城市| 定安县| 台州市| 页游| 永新县| 阿克苏市| 格尔木市| 苏尼特左旗| 正阳县| 吉隆县| 石嘴山市| 江北区| 孙吴县| 安陆市| 贵南县| 临潭县| 武鸣县| 安顺市| 宁乡县| 桓仁| 乾安县| 承德市| 揭阳市| 景洪市| 丰顺县|