Bài tập lập trình C: viết chương trình nhâp ào a b c Giải phương trình bậc 2: ax^2 + bx +c =0

Đây cũng là 1 trong những bài tập hay gặp nhất trong các chương trình học lập trình cơ bản, phương trình bậc 2 cơ bản cũng có nhiều cách giải. Trong đó có cả cách giải khi có nghiệm số phức dài hơn. Tuy nhiên ở bài này hướng dẫn giải viết bằng ngôn ngữ C xử lý cơ bản nhất trước tiên xet 1 = 0 để đưa về cách giải phương trình bậc nhất. Tiếp đó xét phương trình khi a khác 0 lúc đó sẽ tính delta và suy ra kết quả dựa vào 3 trường hợp của delta

'

Lời giải tham khảo

Mã:

#include <stdio.h>

#include <conio.h>

#include <math.h>

void main()

{

float a,b,c,delta,x1,x2;

printf("Phuong trinh bac 2 co dang ax^2 + bx + c = 0. Nhap a :");

scanf("%f",&a);

printf("Nhap b :");

scanf("%f",&b);

printf("Nhap c :");

scanf("%f",&c);

if (a==0)

{

if (b==0)

{

if (c==0) printf("Phuong trinh vo so nghiem");

else printf("Phuong trinh vo nghiem");

}

else

{

x1=-b/c;

printf("Phuong trinh co 1 nghiem:%f",x1);

}

}

else

{

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

if (delta<0) printf("Phuong trinh vo nghiem");

if (delta==0)

{

x1=-b/(2*a);

printf("Phuong trinh da nghiem kep:%f",x1);

}

if (delta>0)

{

x1=(-b+sqrt(delta))/(2*a);

x2=(-b-sqrt(delta))/(2*a);

printf("Phuong trinh co 2 nghiem phan biet");

printf("%f",x1);

printf("%f",x2);

}

}

}

Nếu muốn chuyển sang C++ các bạn đổi hàm printf và hàm scanf thành cout và cin