Ну примерно так. Пусть в алфавите N различных букв. Тогда 3х буквенных комбинаций, с учетом того, что буквы могут использоваться в любых сочетаниях, можно составить:
N*N*N=N³
У нас 216 слов, т.е.
N³=216
Отсюда
<em>// PascalABC.NET 3.3, сборка 1579 от 18.11.2017</em>
<em>// Внимание! Если программа не работает, обновите версию!</em>
begin
var a:=ArrRandom(ReadInteger('n='),-50,50); a.Println;
for var i:=0 to a.IndexMin-1 do a[i]:=0; a.Println;
end.
<u>Пример</u>
n= 13
-10 44 17 13 50 49 -7 -46 -36 14 35 42 26
0 0 0 0 0 0 0 -46 -36 14 35 42 26
Имена пишу сокращённо:
Р сказал: последнее место занял А
Э сказал: последнее место занял Э
Значит, один из них солгал - не могли оба занять последнее место.
Значит, А сказал правду, и его место не последнее.
Значит, солгал Р, сказав что у А последнее место.
Ответ: солгал Раиф
Первая проверка a < b = 100< 12 - нет, уходим по стрелке справа
Вторая проверка b<c = 12 < 100 - да, уходим по стрелке слева
d:=b то есть d:= 12
вывод d = 12
Ответ: 12.
Смотри хороший сайт_pascal.helpov.net