hnn06134   1년 전

예제는 잘 나오는데 어디서 틀렸는지 잘 모르겠네요.

m0v3m1n   1년 전

작성자분께서 주신 기존 코드를 바탕으로 실행해본 결과,

예제 2에선 출력이 66.666664가 나왔으며

예제 8에선 출력이 55.555557가 나왔습니다.

float형으로 연산을 하셔서 그런건지 몰라도, 출력값에서 오차가 조금 발생하신 것 같습니다.

그리고, fseek 함수를 사용하셔서 그런진 몰라도,

입력을

3
10 20 30

으로 받지 못하고, 개행문자를 이용해

3

10

20

30

으로 입력받아야 출력값이 나왔습니다.

아마 입력값을 받는 게 문제이셨을 수도 있었을지도 모릅니다.

제가 fseek 함수의 사용법을 모르기 때문에, fseek 함수의 사용이 문제였는지는 정확히 모르겠습니다... 죄송합니다 ㅠㅠ

제가 문제점을 변경해본 후, 제출해본 코드를 드리겠습니다.

맨밑에 printf("%lf", b / (double)a);에 주석을 달아드렸어야 했는데... 까먹었습니다.

%f 를 %lf로, a를 double 자료형으로 바꾼 연산값을 사용했다는 내용으로 인지하시면 될 거 같습니다.

댓글을 작성하려면 로그인해야 합니다.