이 튜토리얼에서는 이차 방정식의 근을 찾는 프로그램에 대해 설명합니다.
ax2 + bx + c 형식의 이차 방정식이 주어집니다. 우리의 임무는 주어진 방정식의 근 x1과 x2를 찾는 것입니다.
이를 위해 우리는 이
에서 결정적 방법을 사용하고 있습니다.D =√b 2 - 4ac
방정식의 근은 다음과 같습니다.
x1 =(-b + D)/2a 및
x2 =(-b - D)/2a
예시
#include<stdio.h>
#include<math.h>
#include<stdlib.h>
//calculating the roots of equation
void calc_roots(int a, int b, int c) {
if (a == 0) {
printf("Invalid Equation");
return;
}
int d = b*b - 4*a*c;
double sqrt_val = sqrt(abs(d));
if (d > 0) {
printf("Roots are both real and different \n");
printf("%f\n%f",(double)(-b + sqrt_val)/(2*a) , (double)(-b - sqrt_val)/(2*a));
}
else if (d == 0) {
printf("Roots are real and same \n");
printf("%f",-(double)b / (2*a));
} else {
printf("Roots are complex \n");
printf("%f + i%f\n%f - i%f", -(double)b /(2*a),sqrt_val ,-(double)b / (2*a), sqrt_val);
}
}
int main() {
int a = 2, b = -5, c = 8;
calc_roots(a, b, c);
return 0;
} 출력
Roots are complex 1.250000 + i6.244998 1.250000 - i6.244998