آموزش حل معادله درجه دو و درجه سه در پایتون
ویدئو های آموزشی
یکشنبه 26 فروردین 1403
جهت مطالعه این مقاله به 0 دقیقه زمان نیاز دارید
آنچه در این مقاله خواهیم خواند:

مقدمه
 

معادلات درجه دو و درجه سه از مفاهیم و مسائل اساسی ریاضی می‌باشند که در بخش‌های زیادی از علوم مختلف مانند فیزیک، مهندسی و همچنین علوم کامپیوتر و برنامه‌نویسی کاربرد دارند. حل کردن معادلات درجه دو و سه به صورت دستی می‌تواند زمان‌بر باشد ولی برنامه‌نویس‌ها می‌توانند با استفاده از زبان‌های برنامه‌نویسی مانند پایتون، پروسه حل این مسائل را سریع‌تر طی کنند. در این مقاله حل معادله‌های درجه دو و درجه سه را با کمک زبان برنامه‌نویسی کامپیوتر پایتون را با استفاده از مثال بررسی می‌کنیم.

 

معادله درجه دو چیست و روش حل آن چگونه است؟


معادلات درجه دو نوعی از معادلات ریاضی هستند که به صورت عمومی به شکل ax^2+bx+c=0 نوشته می‌شود. برای حل این نوع معادله‌ها ما نیاز داریم که دلتا را محاسبه کنیم. فرمول کلی برای بدست آوردن دلتا در معادلات درجه دو به صورت b^2-4ac=delta می‌باشد. متغیرهای abc در فرمول دلتا همان متغیرهایی هستند که در فرمول کلی معادلات درجه دو ذکر شده است. در واقع برای به دست آوردن دلتا نیاز داریم که مقدار abc را داشته باشیم. دلتا می‌تواند مساوی صفر، بیشتر از صفر یا کمتر از صفر(منفی) باشد، و هر کدام از این حالت‌ها، نتایج منحصربه‌فردی دارند. 


اگر دلتا بزرگتر از صفر باشد، معادله دو جواب خواهد داشت که با استفاده از فرمول x = -b ± √delta / 2a محاسبه می‌شود.
اگر دلتا مساوی با صفر به دست آید، معادله ما تنها یک جواب خواهد داشت که با استفاده از فرمول x = -b/2a محاسبه می‌شود. 
اگر دلتا کمتر از صفر(منفی) به دست آید، دیگر نیازی به محاسبه نداریم چون معادله جواب حقیقی نخواهد داشت.

 

استفاده از زبان برنامه‌نویسی پایتون برای حل معادله درجه دو


برای شروع به حل معادله درجه دو در پایتون نیاز داریم که یک فایل جدید در نرم‌افزار ادیتور خود بسازیم. اگر بخواهیم از vscode استفاده کنیم، می‌توانیم با کلیک بر روی گزینه New File یک فایل جدید بسازیم و برای آن اسم بگذاریم. برای مثال می‌توانیم اسم فایل خود را ec2.py بگذاریم.

همان‌طور که اشاره کردیم، برای حل معادله درجه دو در پایتون به 3 متغیر b ،a و c نیاز داریم. می‌توانیم این 3 متغیر را به صورت ورودی از کاربر خود درخواست کنیم.

 

a = float(input(‘Enter the a : ‘))
b = float(input(‘Enter the b : ‘))
c = float(input(‘Enter the c : ‘))
if a == 0:
   print(‘“a” can not be Zero!’)

 

با نوشتن کد بالا ما از کاربر درخواست می‌کنیم که 3 عدد مجزا را به عنوان متغیرهای b, a و c وارد کند. سپس با استفاده از این 3 متغیر می‌توانیم دلتا را محاسبه کنیم، و از آن برای حل معادله در پایتون استفاده کنیم.

نکته: اگر کاربر برای قسمت a، عدد صفر را وارد کند دیگر معادله درجه دو محسوب نمی‌شود پس نیاز داریم که در برنامه خود دستوری بنویسیم که عدد صفر را از کاربر قبول نکند. 
بعد از دریافت اطلاعات مورد نیاز از کاربر، می‌توانیم دلتا را محاسبه کنیم.


delta = b**2 -4*a*c

 

بعد از محاسبه دلتا، می‌توانیم به ادامه حل معادله در پایتون بپردازیم.


from math import sqrt
a = float(input(‘Enter the a : ‘))
b = float(input(‘Enter the b : ‘))
c = float(input(‘Enter the c : ‘))
if a == 0:
   print(‘“a” can not be Zero!’)
else:
   delta = b**2 -4ac
   if delta > 0: 
       x1 = (-b + sqrt(delta)) / 2*a 
       x2 = (-b - sqrt(delta)) / 2*a
       print(f”you have two answers: \nx1 = {x1} \nx2 = {x2}”)
   elif delta == 0:
       x = -b/2*a
       print(f’you have one answer : \nx = {x}’)
   else: 
       print(‘you have no real answer’)

 

کد بالا با استفاده از ماژول math و دریافت 3 متغیر از کاربر، معادلات درجه دو را حل می‌کند. 


(برای توضیحات و دیدن جزئیات بیشتر لطفاً ویدیو مربوط به حل معادله در پایتون را تماشا کنید.)

 

معادلات درجه سه چیست؟


معادلات درجه سه به صورت کلی به شکل ax^3+bx^2+cx+d=0 نوشته می‌شود. برای نوشتن کد مناسب حل کردن معادلات درجه سه می‌توانیم از ماژول sympy استفاده کنیم.

 

استفاده از زبان برنامه‌نویسی پایتون برای حل معادلات درجه سه


برای حل معادله در پایتون ابتدا نیاز داریم که در ادیتور خود یک فایل جدید بسازیم. می‌توانیم با کلیک بر روی گزینه New File در vscode یک فایل جدید درست کنیم و آن را نام‌گذاری کنیم. مثلا می‌توانیم اسم ec3.py را به عنوان نام فایل خود انتخاب کنیم.

 

import sympy as sp
a = float(input(‘Enter the value of a : ‘))
b = float(input(‘Enter the value of b: ‘))
c = float(input(‘Enter the value of c: ‘))
d = float(input(‘Enter the value of d: ‘))

def SolveTheMath(a, b, c, d):
   x = sp.symbols(“x”)
   equation = a*x**3 + b*x**2 + c*x + d
   answers = sp.solve(equation)
   for answer in answers:
       print(f”The solution is {answers}\n”)
SolveTheMath(a, b, c, d)
 

در کد بالا ما برای حل معادله در پایتون، با استفاده از ماژول math برنامه‌ای نوشتیم که می‌تواند با استفاده از ورودی‌های کاربر (a,b,c,d) معادلات درجه 3 را حل کند.

برای دیدن توضیحات و جزئیات بیشتر، ویدیوی مربوط به حل معادله در پایتون را تماشا کنید.

 

جمع‌بندی


معادلات ریاضی کاربردهای زیادی در حوزه تکنولوژی دارند. حل معادله به صورت دستی می‌تواند زمان‌بر باشد، ولی می‌توانیم با استفاده از برنامه‌نویسی، کدهایی برای حل معادله در پایتون بنویسیم.