Полиглот — Распечатайте Количество Символов Прописью На Многих Языках.

  • Автор темы OlgaGenius
  • Обновлено
  • 22, Oct 2024
  • #1

Эта задача вдохновлена ​​моей предыдущей задачей «Создать программу, которая печатает прописью то количество символов, которое у нее есть».

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

Каждый язык программирования, на котором работает программа, должен заставлять программу печатать количество символов на другом естественном языке.

Например. вы можете создать полиглота, который печатает «пятьдесят» (предположим, это количество символов) на одном языке и «педесет» (сербохорватский для 50) на другом, но не полиглота, печатающего «пятьдесят» на обоих языках.

Здесь также применимо расширение правила «не изобретайте языки для решения задачи»: не создавайте искусственный язык только для того, чтобы проверить свой бессмысленный вывод на каком-либо языке.

Если полиглот, напечатавший «пятьдесят» на одном языке, был протестирован на другом и напечатан (шутка?) «Aijsisdjdsl», то незаконно создавать конланг, используя «Aijsisdjdsl» в качестве слова «пятьдесят».

Заглавные буквы игнорируются: если вы печатаете «one» (каким-то образом), вы можете напечатать «one», «oNe», «ONE» или что-нибудь еще.

Требуется десятичная база.

Также необходимо правильное расстояние.

В (маловероятном, но просто для уточнения) случае, когда ваша программа достигает одного миллиарда символов или более, используйте американскую шкалу чисел. Миллиард здесь равен 10^9, а миллион — 10^6.

Не используйте «сто один»: используйте «сто один».

Не используйте дефис. Выведите сорок четыре, а не сорок четыре.

Если в используемом вами языке есть другой алфавит, используйте его вместо латинизации. Если ваша программа печатает на арабском языке на каком-либо языке, она должна печатать (опять же, пример с 50) «خمسون», а не «хамсун».

Используйте грамматически правильный перевод.

Для наших целей мы используем Ethnologue, чтобы определить, что является языком, а что нет в этом задании. Он наиболее широко используется, поэтому мы остановимся на нем.

Для простоты в этом задании все языки с одинаковыми цифрами будут считаться одинаковыми. Использование любых японских/китайских цифр дает вам 1 балл.

Если слово пишется одинаково на нескольких языках, например «Шесть» в английском и французском языках засчитывается как один балл к вашему счету.

Диалекты, которые различает Ethnologue, будут считаться разными языками, если они не подпадают под два вышеприведенных правила.

Здесь не различаются разные компиляторы одних и тех же языков программирования.

Ваш балл — это количество языков, на которых работает ваша программа, согласно стандартным правилам Розеттского камня.

Если два (или более) лучших ответа совпадают, побеждает тот, у кого наименьшее количество байтов.

Кодировка, используемая для определения количества байтов для разрешения конфликтов, — UTF-8.

Побеждает тот, кто наберет наибольшее количество очков (в случае ничьей см. выше). Веселиться.

#естественный язык #полиглот #розеттский камень

OlgaGenius


Рег
29 Apr, 2013

Тем
83

Постов
208

Баллов
633
  • 26, Oct 2024
  • #2

9 10 12 13 16 18 21 23 языка, 1000 байт

  • Баш (печатает «дуйзенд», голландский)
  • Zsh (принты «een Dausend», люксембургский)
  • Dash (и другие настоящие оболочки POSIX) (печатает «nje mije», албанский)
  • C (печать «et tusind», датский)
  • C++ (печатает «ib txhiab», хмонг)
  • мозготрах (печатает «миле», итальянский)
  • чушь (печатает «афе», Самоанский)
  • Брэйнлав (печатает «мил», испанский)
  • 2DFuck (печатает «севу», яванский)
  • Python 1 (печатает «тысяча», английский)
  • Python 2 (печатает «eintausend», немецкий)
  • Python 3 (печатает «хал кун», сомалийский)
  • Асар (печатает «тухат», эстонский)
  • ><> (принты «jedna hijada», боснийский)
  • Гол><> (печатает «эндуисенд», африкаанс)
  • Бефунге-98 (печатает «o mie», румынский)
  • Бефунге-96 (принты «оту пуку», игбо)
  • Лабиринт (печатает «эльф», мальтийский)
  • шестиугольник (печатает «ett tusen», шведский)
  • GNU Make (печатает «isang libo», филиппинский)
  • Грушевое дерево (печатает «хезар», курдский)
  • Октава (принты «tūkstantis», литовский)
  • Шепот (печатает «серибу», малайский)
 #ifdef    warnings //[[^
#_ if 0
#{
#(________ )
'''''echo' -n<<"'''+r'''":

@echo   "isang libo"
define N #
1_801_201_
0
1...@
endif
print "tuhat"
macro _()
#}
disp("t\xc5\xabkstantis")
quit
#{
> "seribu"
>> Output 1
'''+r''':
[ -n "$ZSH_VERSION" ]&&echo een Dausend||([ -n "$BASH_VERSION" ]&&echo duizend||echo nje mije)
:<<"endmacro;\"^*///]\"\"\"#/t#"
#endif
#include<stdio.h>
int main(){puts(sizeof('1')-1?"et tusind":"ib txhiab");}
/*
print"hezar";exit;<<'/*';#NJ@G@GMCI
1234567890123456789012345678901234567890123|u;ts;6ie$;;tn;e@$<
]+[+++[[<+>->+++++>+<<]+>]<<<.<.+++.(.<.)>>+;+ 
 

Vitman


Рег
24 Oct, 2012

Тем
84

Постов
191

Баллов
641