Đề bài: Viết chương trình bằng ngôn ngữ lập trình Python giải phương trình bậc 2 (đủ): ax^2 + bx + c = 0 (a, b != 0)
Code tham khảo dưới đây được viết trên Python ver 3.8: # Ho ten: Hoang Van Tuan # Website: timoday.edu.vn # Thu vien import math # Nhap du lieu a = float(input('Nhap he so a: ')) while a == 0: if a == 0: print('Hay nhap lai he so a!') a = float(input('Nhap he so a: ')) b = float(input('Nhap he so b: ')) while b == 0: if b == 0: print('Hay nhap lai he so b!') b = float(input('Nhap he so b: ')) c = float(input('Nhap he so c: ')) # Giai va bien luan delta = b * b - 4 * a * c if delta > 0: x1 = (-b + math.sqrt(delta)) / (2 * a) x2 = (-b - math.sqrt(delta)) / (2 * a) print('Phuong trinh co 2 nghiem phan biet la:') print('x1 = ', x1) print('x2 = ', x2) elif delta == 0: x = -b / (2 * a) print('Phuong trinh co nghiem kep la:') print('x1 = x2 = ', x) else: print('Phuong trinh vo nghiem')
Xem tất cả Hướng dẫn chi tiết:Phương trình bậc 1 (bậc nhất) là phương trình có dạng: ax + b = 0 Sau đây là một giải thuật cho phương trình bậc nhất:
+ Nhập vào các hệ số a và b + Nếu a==0: - Nếu b==0 => Vô số nghiệm (hay vô định) - Nếu b!=0 => Vô nghiệm + Nếu a!=0: Phương trình có nghiệm là x = -b/a Còn dưới đây là lưu đồ cho thuật toán: Sau đây là đoạn code demo: # Bài toán: Hãy viết chương trình giải phương # trình bậc nhất 1 ẩn: ax + b = 0 # Lập trình: a = float(input("Nhập hệ số a: " )) b = float(input("Nhập hệ số b: " ))if a ==0 :if b ==0 : print("Vô số nghiệm" )else : print("Vô nghiệm" )else : print("Phương trình có nghiệm x =" , -b / a)Tham khảo:
Bài 1: Tính tam giác: Nhập vào ba số a,b,c bất kì. Kiểm tra xem nó có thể là độ dài ba cạnh hay không, nếu không thì in ra màn hình ‘Khong la ba canh cua mot tam giac’. Ngược lại, thì in diện tích, chu vi của tam giác ra màn hình. Bài 2: Viết chương trình giải phương trình bậc 1 (ax + b = 0). Bài 3: Viết chương trình giải phương trình bậc 2 (ax2 + bx + c = 0). Bài 4: Tìm giá trị lớn nhất trong 4 số a, b, c, d (a, b, c, được nhập từ bàn phím). Bài 5: Tìm giá trị nhỏ nhất trong 4 số a, b, c, d (a, b, c, được nhập từ bàn phím). Bài 6: Nhập vào tâm và bán kính của một đường tròn. Sau đó nhập vào một điểm A(x, y) bất kì và kiểm tra xem nó có thuộc đường tròn hay không? Bài 7: Tìm số ngày của năm N, biết rằng năm nhuận là năm chia hết cho 400 hoặc chia hết cho 4 nhưng không chia hết cho 100. Ví dụ, các năm 2000, 2004 là năm nhuận và có số ngày là 366, các năm 1900, 1945 không phải là năm nhuận và có số ngày là 365. Bài 8: Viết chương trình giải phương trình bậc 1 (ax + b > 0). Hướng dẫn giải:Bài 1: from math import * print("Nhập 3 cạnh a,b,c. Kiểm tra có phải 3 cạnh tam giác.If đúng tính S,CV") a=int(input("Nhập a=")) b=int(input("Nhập b=")) c=int(input("Nhập c=")) if(a+b>c)and(a+c>b)and(b+c>a): cv=a+b+c p=cv/2 s=sqrt(p*(p-a)*(p-b)*(p-c)) print("Chu vi tam giác là:",cv) print("Diện tích tam giác là:",round(s,1)) else :print("Đây không phải là 3 cạnh tam giác") Bài 2: print("Giải phương trình bậc nhất ax+b=0") a=int(input("Nhập hệ số a=")) b=int(input("Nhập hệ số b=")) if a!=0: print("Phương có nghiệm x=",-b/a) if (a==0) and (b>0): print("Phương trình vô số nghiệm") if (a==0) and (b<=0): print("Phương trình vô nghiệm") Bài 3: from math import * print("Giải phương trình bậc 2 ax^2 + bx + c = 0 (a<>0") a=int(input("Nhập hệ số a=")) b=int(input("Nhập hệ số b=")) c=int(input("Nhập hệ số c=")) detal=b*b-4*a*c if detal>0: x1=(-b-sqrt(detal))/(2*a) x2=(-b+sqrt(detal))/(2*a) print("Phương trình có 2 nghiệm") print("x1=",x1) print("x2=",x2) elif detal==0:print("Phương trình có nghiệm kép x1=x2=",-b/(2*a)) else :print("Phương trình vô nghiệm") Bài 4: print("Tìm Max của a,b,c,d") a=int(input("Nhập a=")) b=int(input("Nhập b=")) c=int(input("Nhập c=")) d=int(input("Nhập d=")) max=a if max<b:max=b if max<c:max=c if max<d:max=d print("Số lớn nhất là max=",max) Bài 7: print("Nhập vào 1 năm, kiểm tra xem có phải năm nhuận không?") nam=int(input("Nhập vào năm:")) if (nam % 400==0)or(nam % 4==0) and(nam % 100 !=0):print("Năm",nam,"có 366 ngày") else: print("Năm",nam,"có 365 ngày")Các bài viết liên quan: |