5 мов, 249 байт
Примітка: \rі \eє в буквальному сенсі перекладу рядка і екранують символи, але \x5bмає бути , як-інакше Рубін скаржиться на класі символів в регулярних виразах.
Трохи запізнюючись на вечірку, і жодним чином не переможець, але я почав працювати над поліглотом для виклику подяки і відчув, що може бути трохи пізно, тому перетворив це на це!
q=0//1;'''<?die("\r\e\x5bK".(fgetc(STDIN)?Ekte:Falsk));?>/.to_s.ord;def input()gets.to_i;end;q=+q+0;True="Vrai";False="Faux";'+;sub a{<><1?Vals:Waar}q-
input=prompt;print=alert;True="Vero";False="Falso"//'#'''
a=[False,True];b=input();1-+1;print(a[b])
Пояснення
Python: True/False
q=0//1;'''<?die("\r\e\x5bK".(fgetc(STDIN)?Ekte:Falsk));?>/.to_s.ord;def input()gets.to_i;end;q=+q+0;True="Vrai";False="Faux";'+;sub a{<><1?Vals:Waar}q-
input=prompt;print=alert;True="Vero";False="Falso"//'#'''
a=[False,True];b=input();1-+1;print(a[b])
Тут ми встановлюємо qна 0//1що 0, тобто '''рядок , яка містить велику частину іншого коду, зберігати масив , що містить Falseі Trueта indicies 0і , 1відповідно, призначити внесок b(який повинен бути 0або 1для позначення Falsyі Truthy) , то printв bй індексі a, що показують Falseабо True.
Ruby: Vrai/Faux
q=0//1;'''<?die("\r\e\x5bK".(fgetc(STDIN)?Ekte:Falsk));?>/.to_s.ord;def input()gets.to_i;end;q=+q+0;True="Vrai";False="Faux";'+;sub a{<><1?Vals:Waar}q-
input=prompt;print=alert;True="Vero";False="Falso"//'#'''
a=[False,True];b=input();1-+1;print(a[b])
Як і в сценарії Python, ми встановлюємо змінну q, але в Ruby це встановлено так 0 / /1;'''<?die("\r\e\x5bK".(fgetc(STDIN)?Ekte:Falsk));?>/.to_s.ord, як Ruby розбиває це 0/як "нульовий розділений на", а наступний /як "початок регулярного вираження". Використовуючи цей буквальний текст, я можу приховати PHP-код і почати Python '''. Ми повинні додати, .to_s.ordтому що правильний операнд до /повинен бути a Fixnum. Після цього ми визначаємо функцію input()та змінну Trueі Falseмістимо їх французькі аналоги і, нарешті, починаємо рядок, 'який продовжується на наступний рядок. Нарешті , ми створюємо масив , aякий містить "Vrai"і "Faux"виберіть їх з допомогою input()номера ред 0або 1.
Perl: Waar/Vals
'0//1;\'\'\'<?die("\r\e\x5bK".(fgetc(STDIN)?Ekte:Falsk));?>/.to_s.ord;def input()gets.to_i;end;q}+q{0;True="Vrai";False="Faux";\'';sub a{<><1?Vals:Waar}'
input=prompt;print=alert;True="Vero";False="Falso"//\'#\'\'\'
a=[False,True];b=input();1'+1;print(a[b])
У Perl, то q=..=, q+...+і q-...-блоки цитуються літерали , використовуючи незвичайні роздільники, в коді вище я замінив їх з '...'. Більшість коду міститься в прямому рядку, але ми визначаємо sub a(який містить <><!), Який перевіряє, чи STDINменше 1, повертаючи Waarабо Vals. print(a[b])Фактично printS результат виклику методу sub aз і аргументом , [b]який є посиланням на масив , який містить голе слово b.
JavaScript: Vero/Falso
q=0//1;'''<?die("\r\e\x5bK".(fgetc(STDIN)?Ekte:Falsk));?>/.to_s.ord;def input()gets.to_i;end;q=+q+0;True="Vrai";False="Faux";'+;sub a{<><1?Vals:Waar}q-
input=prompt;print=alert;True="Vero";False="Falso"//'#'''
a=[False,True];b=input();1-+1;print(a[b])
Перший рядок здебільшого коментується поділом 0//1( //це коментар рядка в JavaScript), тому ми просто налаштовані qна 0. У наступному рядку розглядається відображення функцій JS їх імена Python і установок змінних Trueі Falseбути італійськими струнами, в кінці кінців ми виконуємо те ж саме , як код на Ruby встановивши в масив італійських слів і вибір використовуючи inputв 0або 1.
PHP: Ekte/Falsk
die("\r\e\x5bK".(fgetc(STDIN)?Ekte:Falsk));
Оскільки PHP виконує лише код між <?...?>усім іншим, виводиться як є, тому наш код тут просто друкує подачу рядків (щоб повернути нас на початок поточного рядка) та послідовність відходу ANSI, щоб очистити до кінця поточного рядок, за яким слід Ekteабо Falskзалежно від того, вхідний знак ( 0або 1) є правдоподібним або хибним.