728x90
1. 문제
https://codeup.kr/problem.php?id=2019
[출처 : 코드업(https://codeup.kr/)]
이번 문제는 우리가 알고있는 근의 공식을 이용하는 문제입니다.
그리 어렵지 않아서 근의공식을 생각하면서 코딩을 진행하면 됩니다.
2. 해답
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
#include <math.h>
int main() {
int a, b, c;
float tmp1 = 0.0;
float tmp2 = 0.0;
scanf("%d %d %d", &a, &b, &c);
if ((b == 0) && (c == 0)) {
printf("%.2f\n", tmp1);
return 0;
}
tmp1 = (float)b / (float)a / 2;
tmp1 = -tmp1;
tmp2 = (float)(b * b - (4 * a * c)); // 근의 공식
if (tmp2 > 0) { // 실수
tmp2 = sqrt(tmp2);
tmp2 = tmp2 / (float)(2 * a);
printf("%.2f\n", tmp1 + tmp2);
printf("%.2f\n", tmp1 - tmp2);
}
else if (tmp2 < 0) { // 허수
tmp2 = sqrt(-tmp2);
tmp2 = tmp2 / (float)(2 * a);
if (tmp2 < 0) tmp2 = -tmp2;
printf("%.2f+%.2fi\n", tmp1, tmp2);
printf("%.2f-%.2fi\n", tmp1, tmp2);
}
else if (tmp2 == 0) { // 이중근
printf("%.2f\n", tmp1);
}
return 0;
}
'프로그래밍 > CodeUp' 카테고리의 다른 글
CodeUp[Q_2023] : 엑셀의 열 순서 (0) | 2020.03.17 |
---|---|
CodeUp[Q_2020] : 아로마 수 (0) | 2020.03.16 |
CodeUp[Q_2018] : 개미 수열 (0) | 2020.03.14 |
CodeUp[Q_2017] : 진법 변환 (0) | 2020.02.19 |
CodeUp[Q_2016] : 천단위 구분기호 (0) | 2020.02.18 |