divide(int a, int b, int c)
의 기본 10 값을 인쇄 하는 함수 를 구현하십시오 a/b
. 부동 소수점 연산도 사용하지 않고 BigInteger
/ BigDecimal
또는 무엇이든지 해당 라이브러리를. 아래 포인트 4의 (가능한) 예외를 제외하고 c
는 세트 내에 적어도 정확한 문자를 0123456789.
인쇄해야합니다.
a
및b
모든 32 개 비트 정수가 될 수있다. 업데이트 : 골프 목적으로 입력을 64 비트 프리미티브로 사용하고 싶지만 전체 64 비트 범위의 데이터를 지원할 필요는 없습니다.- 그렇지 않은 경우
c
긍정적 인지 확인하지 않아도됩니다 (프로그램이 충돌하지 않기를 바랍니다). - 지원되는 최소 상한
c
은500
입니다. 프로그램이c
상기 값을 지원하지 않으면500
괜찮지 만, 지원하는 경우에도 괜찮습니다. - 균등하게 나누는 숫자의 경우 여분의 0을 인쇄
c
하거나 ( 의 값에 따라 ) 아무 것도 선택하지 않습니다. - 몫으로 추가 작업을 수행하기 위해이 기능을 사용할 필요는 없습니다. 유일한 목표는 인쇄입니다.
-1
및 사이의 숫자1
는 행간을 인쇄할지 여부를 선택하는 것0
입니다. 그러나 이것은 선행 0을 인쇄하는 것이 허용되는 유일한 시나리오이며 이러한 0을 하나만 인쇄 할 수 있습니다.- 마지막 소수점 자리에 원하는 반올림 / 바닥 / 천장 논리를 사용할 수 있습니다.
- 부정적인 답변을 얻으려면 선행을 인쇄해야합니다
-
. 이 계산에는 포함되지 않습니다c
. 인쇄하지하고자하는 경우, 그것은 당신의 선택이다,
+
또는 긍정적 인 답변 아무것도. - 정수 나누기와 정수 계수가 모두 허용됩니다. 당신이 당신의 자신의 구현하도록 선택하지 않는 그러나, 당신이 프리미티브로 제한됩니다 것을 명심
BigInteger
/의BigDecimal
코드 길이에 대한 어떤 계산 라이브러리를. - 당신은 처리하지 않아도
b
되는0
당신이 원하는 경우 수 있지만. 프로그램이 무한 루프에 들어가거나이면 충돌b=0
할 수 있으며 벌점을받지 않습니다. - 주석마다 약간의 규칙 변경. 경기장이 수평을 유지
a
하고b
32 비트 정수임을 보장하기 위해 64 비트 정수를 사용할 수 있습니다. 선택한 언어가 기본적으로 64 비트 정수를 초과하는 경우 해당 기능을 사용할 수 없습니다 (64 비트로 제한되어있는 것처럼 보임). - 명확하지 않은 또 다른 요점 (현재 유효한 답변을 변경해서는 안 됨) :
c
인쇄 된 문자 수 또는 소수점 이하 공백으로 해석 될 수 있지만 프로그램은c
어떻게 든 관련 방식으로 사용해야합니다 인쇄 할 문자 수를 결정합니다. 다시 말해,divide(2,3,2)
출력보다 훨씬 짧은 출력이어야합니다divide(2,3,500)
. 에 관계없이 500자를 인쇄하는 것은 좋지 않습니다c
. - 실제로 함수 이름은 신경 쓰지 않습니다.
d
골프 목적으로 괜찮습니다.
입력
함수 호출과 읽기가 stdin
모두 허용됩니다. 에서 읽을 경우 stdin
세트에없는 문자 [-0123456789]
는 인수 구분 기호로 간주됩니다.
산출
stdout
위에서 설명한대로 문자
예
에 대해 divide(2,3,5)
다음은 모두 허용 가능한 출력입니다.
0.666
0.667
.6666
.6667
0.666
0.667
.6666
.6667
+0.666
+0.667
+.6666
+.6667
다른 예 : divide(371,3,5)
다음은 모두 허용되는 출력입니다.
123.6
123.7
123.6
123.7
+123.6
+123.7
123.66666
123.66667
123.66666
123.66667
+123.66666
+123.66667
그리고에 대한 divide(371,-3,5)
다음의 모든 허용 있습니다 :
-123.6
-123.7
-123.66666
-123.66667
92,3,5
대답했다면 예를 들면 다음과 같습니다30.67