Как я могу назвать Tuples? - PullRequest
       58

Как я могу назвать Tuples?

0 голосов
/ 09 октября 2009

Существует ли алгоритм, независимый от языка, для именования кортежей?

В частности, я хочу следующую функцию:

  1 => Single
  2 => Double
  3 => Triple
  4 => Quadruple
    ...
 10 => Decuple
    ...
100 => Centuple

Прежде всего, это независимый от человека язык? Например, будет ли это понятно в Испании и России?

Во-вторых, каков наиболее эффективный способ создания этого списка?

Редактировать

Просто чтобы уточнить:

  1. Это не для кортежей в смысле программирования, а для системы турниров: одиночное исключение, двойное устранение и т. Д.

  2. Я могу делать переводы, мне просто интересно, существует ли алгоритм, который бы пригодился для переводов.

Ответы [ 4 ]

1 голос
/ 16 октября 2009

Звучит так, будто вам просто нужна функция для преобразования из того, что используется в вашей системе (1, 2, 3 и т. Д.), В удобную для печати строку, удобную для интерфейса. Если вы хотите, чтобы он работал для неанглийских языков, то вам, вероятно, вообще не нужна эта функция. Пусть говорящий по-испански решит, что такое приятная испанская удобная формулировка.

Если бы я писал функцию, я бы пошел только в «Четырехместное исключение» и в прошлом просто использовал «5x Устранение», «6x Устранение». Мне кажется, что это лучше читать, чем некоторые неловко звучащие поздние слова кортежа.

Нет хорошего алгоритма, который вы могли бы использовать для этого, поскольку это не алгоритмическая вещь.

String[4] tupleWords = [ "", "Single", "Double", "Triple", "Quadruple" ];
String getTupleWord(int number) {
    if ( 1 <= number <= 4 ) { 
        return tupleWords[number];
    } else {
        return number+"x";
    }
}

- лучшее, что ты мог сделать.

1 голос
/ 09 октября 2009

Единственными префиксами, не зависящими от языка, будут SI-префиксы, и даже они не являются действительно независимыми от языка.

http://en.wikipedia.org/wiki/Si_units

Я почти уверен, что нотация 'tuple' потребует перевода для каждого языка, который вы хотите использовать.

0 голосов
/ 10 октября 2009

Это полностью зависит от языка. Один прием, который мне нравится использовать в подобных ситуациях, состоит в том, чтобы перефразировать терминологию, чтобы она не зависела от языка. Так что здесь я мог бы реорганизовать пользовательский интерфейс, чтобы он читал что-то более похожее на «Число раундов исключения: N» с числом вместо того, чтобы поставить выпадающий список с «Одиночным», «Двойным» и т. Д.

Даже если вы захотите сделать это, я думаю, что для вашего приложения, если вам придется печатать их все вручную, это не было бы так плохо. Ты действительно когда-нибудь собираешься провести турнир на выбывание? ;)

0 голосов
/ 09 октября 2009

А как насчет "Tuple of 10" и т.д?

...