Pascal ABC. Двоичные строки заданной длины
По данному числу N выведите все строки длины N из нулей и единиц в лексикографическом порядке.
Входные данные
Задано единственное число N. (натуральное, 1 ≤ N ≤ 10)
Выходные данные
Необходимо вывести все строки длины N из нулей и единиц в лексикографическом порядке, по одной на строке
Примеры
входные данные
2
выходные данные
00
01
10
11
Answers & Comments
Ответ:
PascalABC
Объяснение:
var
n, k, m: integer;
function binary(n: integer): string;
var i: integer;
a: array[1..10] of byte;
s: string;
begin
while n > 0 do
begin
inc(i);
a[i] := n mod 2;
n := n div 2;
end;
for n := i downto 1 do s := s + a[n];
binary := s;
end;
begin
Write('Введите N: '); ReadLn(n);
for k := 0 to round(power(2, n) - 1) do
begin
for m := 1 to n - length(binary(k)) do Write('0');
WriteLn(binary(k));
end;
end.