大家可以先口算一下,這道題裡面的x的值為200
接下來我們用python來實現,**如下,每一句**後面都寫有解釋語:
import sympy # 引入解方程的專業模組sympy
x = sympy.symbols("x") # 申明未知數"x"
a = sympy.solve([x+(1/5)*x-240],[x]) # 寫入需要解的方程體
print(a) # 列印出結果
大家應該注意到了,在寫入方程體的時候,(上面的第三行**)我們並沒有原封不動的將原方程寫進去,而是換了一種寫法,將等號右邊的數移到了等號左邊(當然,移動的過程中注意要變號哦!)然後將等號丟棄,最後變成了乙個式子。這個是我們的乙個固定寫法,大家記住就可以了。
注意:注意!!在數學裡面數字和未知數相乘時中間可以不加任何符號,比如2x就代表2乘以x,但在計算機裡,乘法必須寫成*乘的形式。比如2*x,而不能直接寫出2x,此處一定要注意!
這是執行後的結果:
大家可以看到,結果被一對大括號包裹著,冒號前是要求的未知數,冒號後即是程式執行後得出的結果。
我們的計算機還是很聰明的,是吧!
例題2: 接下來我們來試一下兩個未知數的
這是北師大版初中八年級上冊課本132頁的一道練習題:
用python來實現,
import sympy # 引入解方程的專業模組sympy
x,y = sympy.symbols("x y") # 申明未知數"x"和"y"
a = sympy.solve([3*x -2*y-3,x+2*y-5],[x,y]) # 寫入需要解的方程組
print(a) # 列印出結果
執行結果:
所以正確答案為:c答案
用同樣的程式邏輯,填好我們要求的方程,**如下:
一、這是一道根據方程組的解計算代數式的值的常規考題,出這道題的意圖就在於讓同學們在不計算出未知數的值的基礎上就能找到一定的技巧,求出答案。
二、如果單從聯立兩個方程,解方程組,然後再將解出來的x和y帶入後面的代數式求結果的話,計算量會稍微大一些,而且計算過程需要非常仔細小心,因為這裡面牽涉到小數,更或者是一些無理數,那我們常規的解決辦法就是,觀察後面的代數式,將其變為乙個完全平方式子
,再將前面兩個方程構造成x+2y的模式,即將兩方程相加,等號左邊的相加,等號右邊的相加,得到乙個新方程
,化簡,得
,所以原式得
用python實現:
import sympy
x,y = sympy.symbols("x y")
a = sympy.solve([x + y - 0.2,x + 3*y -1],[x,y])
x = a[x]
y = a[y]
re = x**2+4*x*y +4*y**2
print(re)
注意:
1. 不要省略乘號「*」
2. 「**」代表乘方
執行結果截圖:
至此,我們就已經完成了用python來解方程的示範,同學們學會了嗎,如果還有疑問,歡迎留下你們的問題,我們一起來**。
附錄:準備工作 sympy的安裝
1.安裝sympy方法一:
缺點,太慢,還有可能會報紅色錯誤
3.安裝sympy方法二:
優點,新增豆瓣源,速度快,不會報紅色延時的錯誤,推薦
碼小易python老師會不定時的更新一些跟python相關又和數學相關的一些有趣的程式,喜歡就關注我吧。
python 操作符 (兩個乘號就是乘方)
乙個乘號 如果運算元是兩個數字,就是這兩個數字相乘,如2 4,結果為8 兩個乘號就是乘方。比如3 4,結果就是3的4次方,結果是81 如果是字串 列表 元組與乙個整數n相乘,返回乙個其所有元素重複n次的同型別物件,比如 str 3將返回字串 strstrstr 如果是函式定義中引數前的 表示的是將呼...
劍指offer 5 用兩個棧實現佇列 Python
用兩個棧來實現乙個佇列,完成佇列的push和pop操作。佇列中的元素為int型別。棧 先進後出 佇列 先進先出 1.先定義兩個空棧,stack1負責入棧,stack2負責出棧。2.利用push 將元素壓入stack1中 1,2,3 此時stack2是空的 3.將stack1的所有元素pop出並pus...
用兩個棧實現佇列 python
題目描述 用兩個棧來實現乙個佇列,完成佇列的push和pop操作。佇列中的元素為int型別。解題思路 1.棧是先進後出的,佇列是先進先出的,如下圖。2.把新新增進來的節點都新增到棧1上,然後棧1上的節點新增到棧2上,再將棧2上的節點輸出,就是實現了佇列的輸出方式。輸出pop 函式具體可以分為以下三種...