#include <stdio.h>
#include <math.h>
main()
{
float a,b,c,w,x,X,Y,Z;
char E;
while (1) {
printf("\n이차방정식 aX²+ bX + c의 해를 구하는 프로그램 입니다. \n");
printf("a, b, c값을 입력해 주세요!!! \n");
printf("a : ");scanf("%f",&a);
printf("b : ");scanf("%f",&b);
printf("c : ");scanf("%f",&c);
x=b*b-4*a*c;/* 판별식 */
Z=sqrt(x);/* sqrt=제곱근 구하는 식 */
if (a==0)
{
printf("a가 0이면 해를 구할수 없습니다 -_-+\n");
printf("다시 입력해 주세요!!!\n");
}
else
{if (x>0)
{
X=((-b)+Z)/(2*a);
Y=((-b)-Z)/(2*a);
printf("%.0f X²+ %.0f X + %.0f의 해는 %.2f, %.2f입니다.\n",a,b,c,X,Y);
}
else {if(x==0)
{
X=(-b)/(2*a);
printf("%.0f X²+ %.0f X + %.0f의 해는 %.2f입니다.(중근)\n",a,b,c,X);
}
else
{
X=(-b)/(2*a);
w=x/(2*a);
printf("%.0f X²+ %.0f X + %.0f의 해는 %.2f + j%.2f, %.2f - j%.2f 입니다.(허근)\n",a,b,c,X,w,X,w);
}}}
printf("계속 하시겠습니까? (Y/N)");
scanf("%c",&E);
if (E=='Y'||E=='y') break;
else
;
}
}
실행은 되는데 마지막 부분에서 계속하시겠습니까? 한후 Y,N을 입력받아야 하는데 바로 다시 처음으로 가 버리더군요
scanf가 실행이 되지 않는것 같은데 이유를 도통 모르겠습니다..ㅠ.ㅜ
초보라서 그런지;;; 답변 부탁드립니다
|