electronics.SE의이 질문에서 영감을 얻은 것은 다음과 같습니다.
기존 음성 합성 도구를 사용 하지 않고 10 진수 (0-9)의 시퀀스를 취하여 큰 소리로 말하는 프로그램 또는 서브 루틴을 작성하십시오 .
입력:
입력 자릿수를 ASCII 형식의 문자열, 정수 배열, BCD 인코딩 숫자 등의 적절한 형식으로 제공하도록 요청할 수 있습니다. 솔루션이 실행 가능한 프로그램 인 경우 다음과 같이 입력 할 수 있습니다. 명령 행 매개 변수, 표준 입력에서 읽거나 합리적인 방법으로 얻습니다.
프로그램 은 호출 당 8 자리 이상 을 말할 수 있어야합니다 . 첫 번째 숫자가 유일한 숫자가 아닌 한 첫 번째 숫자가 0이 아니라고 가정 할 수 있습니다 .
산출:
프로그램은 오디오 장치를 사용하여 직접 숫자를 말하거나 재생 가능한 사운드 파일을 출력 할 수 있습니다. 출력 파일이있는 경우 표준 오디오 형식이거나 원시 샘플 데이터로 구성 될 수 있습니다. 원시 샘플 데이터를 출력하는 경우 재생에 적합한 파라미터 (샘플 속도, 샘플 당 비트 수, 엔디안, 부호있는 / 부호없는 채널 수)를 기록하십시오. aplay에서 지원하는 형식 이 선호됩니다.
숫자를 어떻게 말할지에 대한 세부 사항을 자유롭게 결정할 수 있지만, 출력은 일반적인 영어 사용자가 이해할 수있는 방식으로 영어 숫자로 구성 되어야하며 청취자가 정확하게 녹음 할 수있을 정도로 명확해야합니다. 8 자리 난수입니다. 아니오, 단지 n 번 울리는 것은 계산되지 않습니다. 숫자 사이에 일시 정지를 포함시키는 것을 잊지 마십시오.
채점 :
표준 코드 골프 스코어링 규칙이 적용됩니다. 스코어는 코드 길이 (바이트) 또는 코드가 유니 코드 텍스트로 작성된 경우 유니 코드 문자입니다. 최저 점수가 이깁니다. 모든 언어는 간다.
electronics.SE에 대한 원래 질문은 임베디드 프로그래밍에 관한 것이 었으므로 저수준 언어를 사용하여 저자에게 뼈를 던지는 것이 적절하다고 생각했습니다. 솔루션이 컴파일 된 언어로 작성된 경우 길이를 계산하도록 선택할 수 있습니다 점수로 컴파일 된 실행 파일 (바이트) (예, Java .class
파일 과 같은 사전 컴파일 된 바이트 코드 도 괜찮습니다.)이 옵션을 사용하기로 선택한 경우 소스 코드와 함께 답변에 컴파일 된 실행 파일의 사본 (예 : 16 진 덤프)을 포함 시키십시오. 그리고 컴파일러 버전 및 생성에 사용한 옵션.
선외 가작을 하는 50 렙 현상금과 함께, 또한의 기준을 충족하는 첫 번째 대답에 부여됩니다 원래의 질문에 , 즉 플래시의 4킬로바이트 및 SRAM의 1킬로바이트와 임베디드 MCU에서 실행 할 수 있습니다.
제한 사항 :
해당 파일 또는 리소스 의 길이를 점수의 일부로 계산하지 않으면 선택한 언어의 표준 런타임 환경에 포함되지 않은 파일 또는 네트워크 리소스 를 사용할 수 없습니다. (예 : 웹에서 오디오 샘플로드를 허용하지 않습니다.)
또한 선택한 언어의 표준 런타임 환경에 포함되어 있더라도 기존 음성 합성 도구 나 오디오 데이터의 라이브러리 또는 편집을 사용하지 않을 수도 있습니다 (점수의 일부로 크기를 계산하지 않는 한) .