게시판 즐겨찾기
편집
드래그 앤 드롭으로
즐겨찾기 아이콘 위치 수정이 가능합니다.
왕초보 C언어 이차방정식 프로그램 질문이요 ㅠㅠ
게시물ID : programmer_8957짧은주소 복사하기
작성자 : 포도맛염산
추천 : 0
조회수 : 926회
댓글수 : 5개
등록시간 : 2015/03/28 13:59:41
옵션
  • 본인삭제금지

   if(a!=0){ 
    if(Discriminant(a,b,c)>=0)
    printf("The roots are %.3f, %.3f\n",(-b+sqrt((double)(b*b-4*a*c)))/2*a,(-b-sqrt((double)(b*b-4*a*c)))/2*a);
    
    else
    printf("The roots are %.3f+%.3fi,%.3f-%.3fi\n",-b/2*a,sqrt((double)((-b*b+4*a*c)))/2*a,-b/2*a,sqrt((double)((-b*b+4*a*c)))/2*a);
   }
 
일단 문제점이 이부분이라 이부분만 짤라서 가져왔습니다...
 
ax^2+bx+c의 a b c를 입력해서 근을 구하는 식인데
 
a가 1일때는 모든 프로그램이 아무 이상이 없이 잘 돌아갑니다..
 
그러나 1 -4 4를 넣으면 근이 2라고 잘 뱉어준 식이 2 -8 8을 넣으면 근을 8이라고 뱉네요
 
마치 a하고 c를 곱한거마냥 이렇게 나오는데 어디가 오류이며 어떤식으로 수정해야할까요...?아직 배열까지 밖에 안배워서 쉽게 설명해주셨으면 감사 하겠습니다 ㅠㅠ
 
자비로우시고 관대하고 능력있는 프갤 분들의 도움의 손길을 기다립니다 ㅠ
전체 추천리스트 보기
새로운 댓글이 없습니다.
새로운 댓글 확인하기
글쓰기
◀뒤로가기
PC버전
맨위로▲
공지 운영 자료창고 청소년보호