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