Написать программу в PascalABC.NET, используя функцию " function ". Сама задача: ...

0 голосов
119 просмотров

Написать программу в PascalABC.NET, используя функцию " function <название функции> ". Сама задача: Вывести все натуральные четырехзначные числа, в которых есть все три заданные цифры. Формат ввода: На вход подается цифры n1, n2, n3 (от 0 до 9). Формат вывода: Полученные числа в одну строку через 1 пробел. Пример входных данных 3 7 9 Пример выходных данных 1379 1397 1739 1793 1937 1973 2379.....


Информатика (91 баллов)
оставил комментарий Одаренный (1.6k баллов)

Непонятно, как получается четвертая цифра. Для комбинаций из трех хаданных цифр спереди сначала 1 добваляется, потом добавляются 2, 3, ... 9 ?

Дан 1 ответ
0 голосов
Одаренный (1.6k баллов)

// PascalABC.NET

function ХочетсяСтранного(n1, n2, n3: integer): sequence of integer;

begin

 var a := Seq(n1, n2, n3).Sorted.ToArray;

 var s := a.Permutations.Select(t -> 100 * t[0] + 10 * t[1] + t[2]);

 foreach var i in 1..9 do

   foreach var n in s do

     yield 1000*i+n

end;

begin

 var (n1, n2, n3) :=

 ReadInteger3('Введите три цифры через пробел:');

 ХочетсяСтранного(n1, n2, n3).Print

end.


image
оставил комментарий Одаренный (1.6k баллов)

Версия PascalABC.NET должна быть не древнее 01.05.2020

...