#include <stdio.h>
#include <math.h>
void rooter(double a, double b, double c)
{
double x, pan = (pow(b, 2) - (4 * a * c));
printf("판별식 값 : %lf\n", pan);
if(pan > 0) {
x = (-b + (sqrt(pan))) / (2 * a);
printf("실근 1 : %lf\n", x);
x = (-b - (sqrt(pan))) / (2 * a);
printf("실근 2 : %lf\n", x);
} else if(pan == 0) {
x = (-b + (sqrt(pan))) / (2 * a);
printf("중근 : %lf\n", x);
} else {
double sil, huh;
pan = -pan;
sil = -b / (2 * a);
huh = pan / (2 * a);
printf("허근 1 : %lf + %lfi\n", sil, huh);
printf("허근 2 : %lf - %lfi\n", sil, huh);
}
}
int main()
{
double a, b, c;
while(1) {
printf("2차 방정식의 계수 3개 입력 : ");
scanf("%lf %lf %lf", &a, &b, &c);
rooter(a, b, c);
}
return 0;
}
'stack overflow > C' 카테고리의 다른 글
| [C][단순연결리스트] 다항식더하기 (0) | 2012.08.10 |
|---|---|
| [C][이중연결리스트] 이중연결리스트 기본형 (0) | 2012.08.09 |
| [C][단순연결리스트][1차원배열동적할당][선택정렬] 단순연결리스트 기본형 (0) | 2012.08.07 |
| [C][난수발생][선택정렬][2차원배열] 인공지능 빙고게임 (0) | 2012.08.05 |
| [C][getchar()/putchar()] 주석 제거기 (3) | 2012.08.05 |

root_src.cpp