php - 면접질문, 100이내의 숫자를 중국어로 변환..
PHP中文网
PHP中文网 2017-06-14 10:50:09
0
6
1005

숫자를 텍스트로 빠르게 변환하는 방법
예를 들어 1 =>1, 2=>2, ..., 15=》fifteen
지금 생각하고 있는 것은 한자를 배열로 저장하는 것입니다

으아악

그런데 입력된 숫자를 중국어로 변환하는 방법이 너무 번거롭나요?

최종 결과는 다음과 같습니다.
입력 12
출력

으아악
PHP中文网
PHP中文网

认证高级PHP讲师

모든 응답(6)
淡淡烟草味

으아악

过去多啦不再A梦

디지털 변환 과정을 말로 명확하게 설명할 수 있다면 코드 작성은 번역 과정입니다.

알고리즘은 실제로 매우 이상한 비즈니스 논리를 가진 비즈니스 논리일 뿐입니다. 초점은 이 비즈니스 논리

를 분석하는 것입니다.

초등학교를 졸업하기 전에도 아라비아 숫자를 중국 숫자로 변환할 수 있습니다. 이 변환 과정을 완료하려면 마음속에 방법이 있어야 합니다. 따라서 여기서 조사의 초점은 문제의 추상화과정입니다. 추상적이고 정확하려면 먼저 문제 자체에 대한 포괄적인 분석과 이해가 있어야 하며 규칙을 찾아야 합니다. 디지털 변환 과정에서 0을 10이라고 하고, 0을 0이라고 합니다. 이 과정은 마음 속에서 너무나 자연스러워서 상황을 분석하고 규칙을 찾아내는 능력이 어느 정도 필요합니다.

이 기사를 추천합니다. 기사 시작 부분의 분석은 프로그래밍에 매우 중요한 추상화 과정입니다.

漂亮男人

으아악

Ty80

숫자를 텍스트로 빠르게 변환하는 방법
예를 들어 1 =>1, 2=>2, ..., 15=》Fifteen
지금 생각하고 있는 것은 한자를 배열로 저장하는 것입니다

으아악

그런데 입력된 숫자를 중국어로 변환하는 방법이 너무 번거롭나요?

최종 결과는 다음과 같습니다.
입력 12
출력

으아악

다음은 JavaScript

의 구현입니다.

한자의 숫자 표현 관찰하기

한자는 숫자의 순서를 명시적으로 지정합니다. 예를 들어 一百零一는 백(백, 백, 십, 백만)의 순서를 갖습니다.

2 >>>> 2

10 >>>> > 코드> >>>> 2 >>>> 二个
10 >>>> 一十 >>>>

16 >>>> 一十 六个 >>>> 十六

105 >>>> 一百 零十 五个 >>>> 一百零五

1024 >>>> 一千 零百 二十 四个 >>>> 一千零二十四

표현을

의 형태로 볼 수 있음을 알 수 있습니다. 值 + 阶

또한 다음 조건을 충족하는 경우

需要省略阶或者值

10十十에 해당하며 로 작성됩니다.

110100과 10 code> 110 쓰기 10 对应 一十 写作
110 对应 一百一十零个 写作 一百一十.... 잠깐

위의 생각을 바탕으로 그려야 할 프로그래밍 아이디어는 다음과 같습니다.

  1. 숫자 입력

    n

  2. 토큰 배열로 매핑합니다. 예를 들어 8["八"]가 되고, 101["一", "zero", "一"]가 됩니다. n 映射到一个数组 tokens 上。 比如 8 变成 ["八"], 101 变成 ["一", "零", "一"]

  3. 레벨 추가

    101 变成 ["一", "百", "十", "零", "一", "个"]

  4. 백일과 같은 필터를 가장 간단한 형태로

    一百十零一个 变成最简形式 一百零一

도구 기능

으아악

달성

첫 번째 구현

大于 10数字映射到汉字的数制

예를 들어

101 返回 一百零一를 반환하려면 101을 입력하세요.

위에 적힌 도구 기능을 사용하면 더 빨라집니다

으아악

간단 테스트 테스트 변환

...2 4 6 8 16 32 ... 成 十六 三十二 으아악

숫자 탐색

....1부터 n까지

으아악

테스트


过去多啦不再A梦

https://github.com/wilon/php-...

PHP 숫자는 한자 설명으로 변환되고 RMB는 대문자로 표시됩니다

伊谢尔伦

수천억 개의 숫자를 지원합니다. cns 배열을 중국어 번체로 수정하면 RMB를 대문자로 사용할 수 있습니다. 으아악

아이디어 첨부

/a/11...

최신 다운로드
더>
웹 효과
웹사이트 소스 코드
웹사이트 자료
프론트엔드 템플릿