정수 숫자 읽기num2Voice
[정수 숫자 읽기] string num2 Voice (int num) {...} 예: 입력: 12345 출력: 1만 2천 345 (시간 20min 이내에 코드를 완성하고 연결할 수 있음)
이 프로그램 문제는 개인적인 느낌으로는 좀 어려울 것 같습니다. 다음은 가능한 실현 방법을 보여 드리겠습니다. 참고만 하고 프로그램에서 고려가 미비한 부분이 있을 수 있으니 지적해 주시기 바랍니다.
String num2Voice(int num) {
if (num == 0) {
return " ";
}
String[] voiceTbl1 = new String[] {
" ", " ", " ", " ", " ", " ", " ", " ", " ", " "
};
String[] voiceTbl2 = new String[] {
" ", " ", " ", " ", " "
};
int loopCount = 0;
String voice = "";
boolean isNegative = false;
if (num < 0) {
isNegative = true;
num = -num;
}
while (num != 0) {
int mod = num % 10000;
num = num / 10000;
if (mod != 0) {
int d1 = mod % 10;
int d2 = mod % 100 / 10;
int d3 = mod % 1000 / 100;
int d4 = mod / 1000;
String tmp = "";
if (d4 != 0) {
tmp += voiceTbl1[d4] + voiceTbl2[2]/* */;
} else {
// 4 0 , 0 0, 10101
if (num != 0 && d3 != 0) {
tmp += voiceTbl1[0]/* */;
}
}
if (d3 != 0) {
tmp += voiceTbl1[d3] + voiceTbl2[1]/* */;
} else {
// 4 0 0 ,
// 0 0, 10001, 3010
if ((d4 != 0 || num != 0) && (d2 != 0 || d1 != 0)) {
tmp += voiceTbl1[0]/* */;
}
}
if (d2 != 0) {
tmp += voiceTbl1[d2] + voiceTbl2[0]/* */;
} else {
// 0 0 , 0 0, 302
if (d3 != 0 && d1 != 0) {
tmp += voiceTbl1[0]/* */;
}
}
if (d1 != 0) {
tmp += voiceTbl1[d1];
}
voice = tmp + voice;
}
loopCount++;
if (num != 0) {
if (loopCount == 1) {
// “ ”
if (mod == 0 && num >= 10000 && num % 10000 == 0) {
continue;
}
voice = voiceTbl2[3]/* */ + voice;
} else if (loopCount == 2) {
voice = voiceTbl2[4]/* */ + voice;
}
}
}
if(isNegative) {
voice = " " + voice;
}
return voice;
}
이 내용에 흥미가 있습니까?
현재 기사가 여러분의 문제를 해결하지 못하는 경우 AI 엔진은 머신러닝 분석(스마트 모델이 방금 만들어져 부정확한 경우가 있을 수 있음)을 통해 가장 유사한 기사를 추천합니다:
다양한 언어의 JSONJSON은 Javascript 표기법을 사용하여 데이터 구조를 레이아웃하는 데이터 형식입니다. 그러나 Javascript가 코드에서 이러한 구조를 나타낼 수 있는 유일한 언어는 아닙니다. 저는 일반적으로 '객체'{}...
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
CC BY-SA 2.5, CC BY-SA 3.0 및 CC BY-SA 4.0에 따라 라이센스가 부여됩니다.