Giải phương trình bậc 2 trong C

Đề bài

Viết chương trình giải phương trình bậc 2 trong C. Phương trình bậc 2 có dạng:

AX2 + BX + C = 0

Lời giải

Lời giải của chúng tôi sử dụng phương thức sqrt() để tính căn bậc 2 của một số trong C. Sử dụng phương thức scanf(“%f”, &a) để đọc số thực từ bàn phím và gán cho biến a.

#include <iostream> #include <cmath> using namespace std; /** * giai phuong trinh bac 2: ax2 + bx + c = 0 * * @param a: he so bac 2 * @param b: he so bac 1 * @param c: so hang tu do */ void giaiPTBac2(float a, float b, float c) { // kiem tra cac he so if (a == 0) { if (b == 0) { coutt<<“Phuong trinh vo nghiem!”; } else { cout<<“Phuong trinh co mot nghiem: x = “<<-c / b; } return; } // tinh delta float delta = b*b – 4*a*c; float x1; float x2; // tinh nghiem if (delta > 0) { x1 = (float) ((-b + sqrt(delta)) / (2*a)); x2 = (float) ((-b – sqrt(delta)) / (2*a)); cout<<“Phuong trinh co 2 nghiem la: x1 = “<< x1<<” va x2 = “<<x2; } else if (delta == 0) { x1 = (-b / (2 * a)); cout<<“Phong trinh co nghiem kep: x1 = x2 = “<< x1; } else { coutt<<“Phuong trinh vo nghiem!”; } } /** * ham main */ int main() { float a, b, c; cout << “Nhap he so bac 2, a = “; cin >> a; cout << “Nhap he so bac 1, b = “; cin >> b; cout << “Nhap so hang tu do, c = “; cin >> c; giaiPTBac2(a, b, c); return 1; }

Kết quả:

Nhap he so bac 2, a = 2 Nhap he so bac 1, b = 3 Nhap so hang tu do, c = 1 Phuong trinh co 2 nghiem la: x1 = -0.500000 va x2 = -1.000000

Trả lời

Email của bạn sẽ không được hiển thị công khai. Các trường bắt buộc được đánh dấu *