실숫값이랑 가장 가깝지만 더 작은 정숫값 출력하는거 질문드려요

실숫값이랑 가장 가깝지만 더 작은 정숫값 출력하는거 질문드려요

작성일 2022.10.18댓글 1건
    게시물 수정 , 삭제는 로그인 필요

질문이 있습니다.

제가 실숫값을 가지고 결과를 출력해야하는데 이 실숫값을 정수로 출력해야 합니다.
그런데 이 정수는 이 실숫값과 가장 가까워야 하지만 실숫값보다는 작은 값으로 출력해야 하는데 어떻게 해야하나요?
예를들어, 3.14나 3.85면 3으로 출력해야 하고 -3.14나 -3.85면 -4로 출력해야 하는데

우째야될까요?



profile_image 익명 작성일 -

안녕하세요~ :)

해당 작업을 해주는 floor 함수가 있습니다. 이 함수는 지정된 실숫값보다 작으면서 가장 근접한 정숫값을 출력해 줍니다. 따라서 아래와 같이 코드를 구성하면 원하는 형태의 값을 출력할 수 있습니다.

#include <stdio.h> // printf 함수를 사용하기 위해 #include <math.h> // floor 함수를 사용하기 위해 int main() { printf("%d < 3.14\n", (int)floor(3.14)); printf("%d < 3.85\n", (int)floor(3.85)); printf("%d < -3.14\n", (int)floor(-3.14)); printf("%d < -3.85\n", (int)floor(-3.85)); return 0; }

위 예제는 아래와 같이 출력됩니다.

3 < 3.14 3 < 3.85 -4 < -3.14 -4 < -3.85 이 창을 닫으려면 아무 키나 누르세요...