Giải phương trình bậc nhất ax + b = 0 trong C / C++
Trong bài viết này, codehow sẽ hướng dẫn các bạn cách giải phương trình bậc nhất ax + b = 0 trong C / C++. Đây là bài toán thường gặp khi bắt đầu học lập trình, bởi nó vừa áp dụng kiến thức phổ thông vừa áp dụng kiến thức căn bản trong lập trình.
Trước khi đi vào viết chương trình giải phương trình bậc nhất ax + b = 0 ta cùng ôn lại cách giải đã nhé.
Phương trình bậc nhất một ẩn ax + b = 0 (hay còn gọi là phương trình truyến tính). Trong đó:
- a: là hệ số bật một.
- b: là một hằng số.
Để tìm nghiệm x của phương trình, có các trường hợp như sau:
- a = 0 và b = 0 thì phương trình vô số nghiệm.
- a = 0 và b != 0 thì phương trình vô nghiệm.
- a != 0 thì nghiệm được tính theo công thức: x = -b / a.
Vậy làm thế nào để thực hiện giải phương trình bậc nhất ax + b = 0 trong C / C++ thì hãy bắt đầu ngay cùng mình thôi nào.
Giải phương trình bậc nhất ax + b = 0 trong C / C++
Để giải phương trình bậc nhất ax + b = 0 trong C / C++, ta thực hiện theo từng bước như sau.
Bước 1: Khai báo hai biến a và b là hai hệ số của phương trình, biến nghiem là nghiệm của phương trình.
//khai báo hai biến a và b là hệ số của phương trình int a; int b; //khai báo biến nghiem là nghiệm của phương trình double nghiem;
Bước 2: Yêu cầu người dùng nhập vào hai hệ số của phương trình.
//yêu cầu người dùng nhập vào hệ số a và b printf("Nhập hệ số a = "); scanf("%d", &a); printf("Nhập hệ số b = "); scanf("%d", &b);
Bước 3: Hiển thị phương trình sau khi nhập dưới dạng ax + b = 0.
//hiển thị ra phương trình sau khi nhập printf("Phương trình sau khi nhập: %dx + %d = 0",a,b);
Bước 4: Tạo điều kiện xử lý chương trình. Chia thành 3 trường hợp như sau:
- TH1: a = 0 và b = 0 thì kết luận phương trình vô số nghiệm.
- TH2: a = 0 và b != 0 thì kết luận phương trình vô nghiệm.
- TH3: a != 0 thì nghiệm phương trình x = -b / a.
//tạo điều kiện cho chương trình //TH1: nếu a = 0 và b = 0 thì phương trình vô số nghiệm //TH2: nếu a = 0 và b != 0 thì phương trình vô nghiệm //TH3: Nếu a != thì x = -b / a if(a == 0) { if(b == 0) { printf("\n-> Phương trình trên có vô số nghiệm\n"); } else { printf("\n-> Phương trình trên vô nghiệm\n"); } } else { nghiem = (double)-b/a; printf("\n-> Phương trình trên có nghiệm là: x = %0.2f\n",nghiem); }
Dưới đây là hai chương trình giải phương trình bậc nhất ax + b = 0 trong C / C++ mình đã viết sẵn, các bạn có thể tham khảo nhé.
Chương trình C:
#include <stdio.h> int main(){ //khai báo hai biến a và b là hệ số của phương trình int a; int b; //khai báo biến nghiem là nghiệm của phương trình double nghiem; //yêu cầu người dùng nhập vào hệ số a và b printf("Nhập hệ số a = "); scanf("%d", &a); printf("Nhập hệ số b = "); scanf("%d", &b); //hiển thị ra phương trình sau khi nhập printf("Phương trình sau khi nhập: %dx + %d = 0",a,b); //tạo điều kiện cho chương trình //TH1: nếu a = 0 và b = 0 thì phương trình vô số nghiệm //TH2: nếu a = 0 và b != 0 thì phương trình vô nghiệm //TH3: Nếu a != thì x = -b / a if(a == 0) { if(b == 0) { printf("\n-> Phương trình trên có vô số nghiệm\n"); } else { printf("\n-> Phương trình trên vô nghiệm\n"); } } else { nghiem = (double)-b/a; printf("\n-> Phương trình trên có nghiệm là: x = %0.2f\n",nghiem); } printf("\n-------------------------------\n"); printf("Chương trình này được đăng tại codehow.net"); return 0; }
Chương trình C++:
#include <iostream> using namespace std; int main(){ //khai báo hai biến a và b là hệ số của phương trình int a; int b; //khai báo biến nghiem là nghiệm của phương trình double nghiem; //yêu cầu người dùng nhập vào hệ số a và b cout << "Nhập hệ số a = "; cin >> a; cout << "Nhập hệ số b = "; cin >> b; //hiển thị ra phương trình sau khi nhập cout<<"Phương trình sau khi nhập: "<<a<<"x + "<<b<<" = 0"; //tạo điều kiện cho chương trình //TH1: nếu a = 0 và b = 0 thì phương trình vô số nghiệm //TH2: nếu a = 0 và b != 0 thì phương trình vô nghiệm //TH3: Nếu a != thì x = -b / a if(a == 0) { if(b == 0) { cout << "\n-> Phương trình trên có vô số nghiệm" << endl; } else { cout << "\n-> Phương trình trên vô nghiệm" << endl; } } else { nghiem = (double)-b/a; cout << "\n-> Phương trình trên có nghiệm là: x = " << nghiem << endl; } cout<<"\n-------------------------------\n"; cout<<"Chương trình này được đăng tại codehow.net"; return 0; }
Kết quả có nghiệm x:
Kết quả vô nghiệm:
Kết quả vô số nghiệm:
Như vậy là chúng ta đã cùng nhau tìm hiểu và thực hiện chương trình giải phương trình bậc nhất trong C / C++. Các bạn có thể luyện tập nhiều dạng bài tập khác nhau tại serries bài tập C / C++ của codehow nhé. Cảm ơn các bạn rất nhiều.