Este é um desafio simples que, esperançosamente, pode levar a algumas respostas criativas.
Citando a Wikipedia : "A sinalização multifreqüencial de tom duplo (DTMF) é um sistema de sinalização de telecomunicações em banda que usa a banda de frequência de voz em linhas telefônicas entre equipamentos telefônicos e outros dispositivos de comunicação e centros de comutação".
Tarefa
Dados dois números inteiros que representam as frequências de coluna e linha na tabela a seguir, sua tarefa é gerar a chave correspondente:
| 1209 Hz | 1336 Hz | 1477 Hz
-------+---------+---------+---------
697 Hz | 1 | 2 | 3
770 Hz | 4 | 5 | 6
852 Hz | 7 | 8 | 9
941 Hz | * | 0 | #
Exemplos
- Se a entrada for
[ 1209, 852 ]
, a saída esperada é "7". - Se a entrada for
[ 1477, 941 ]
, a saída esperada é "#".
Regras
- Você deve receber a entrada como números inteiros em qualquer formato razoável, como duas variáveis separadas ou uma matriz de duas variáveis. Especifique em qual ordem seu programa está esperando ( coluna_freq, row_freq ou row_freq, column_freq ).
- A entrada é garantida como válida.
- Você deve imprimir ou imprimir um caractere . No entanto, você também pode gerar um número inteiro para as teclas de dígitos.
- Isso é código-golfe , então a resposta mais curta em bytes vence!
fonte
x#y="_1425__#9__*70836"!!mod(2*x+y)18
MATL , 23 bytes
As entradas são: frequência da coluna e frequência da linha.
Experimente online!
Explicação
Multiplicar a frequência da coluna por 13, adicionar a frequência da linha e calcular o módulo 79 fornece um valor diferente para cada um dos 12 pares de entradas.
fonte
Gelatina , 24 bytes
Experimente online!
fonte
JavaScript (Node.js) , 34 bytes
Experimente online!
Python 3 , 39 bytes
Experimente online!
linha, a coluna pode ser fornecida em qualquer ordem.
fonte
Befunge , 34 bytes
Experimente online!
Explicação:
fonte