// PascalABC.NET 3.1, сборка 1218 от 12.04.2016
begin
var a:=ArrRandom(ReadInteger('n='),10,99);
a.Println.Sorted.Println;
Writeln('Количество разных чисел ',a.Distinct.Count)
end.
<u><em>Тестовое решение:</em></u>
n= 20
60 33 12 47 79 81 33 26 73 98 82 81 71 70 96 48 13 66 29 85
12 13 26 29 33 33 47 48 60 66 70 71 73 79 81 81 82 85 96 98
Количество разных чисел 18
Это файл, объединяющая в себе архив и исполняемый код для его распаковки. Такие архивы, в отличие от обычных, не требуют отдельной программы для их распаковки (получения исходных файлов, из которых они созданы), если исполняемый код можно выполнить в указанной операционной системе. Это удобно, когда неизвестно, есть ли у пользователя, которому передаётся архив, соответствующая программа распаковки.
<u /> <u> 123 I 61 I 30 I 15 I 7 I 3 I 1 I
</u> 1 I 1 I 0 I 1 I 1 I 1 I 1 I
<-----------------------------------------------
Ответ; 123 = 1111011 в двоичной с/с
Теперь объяснение:
1) Разлинуй так, как показано на схеме.
2) Число 123 : 2 = 61(ост.1)
3) Число 61 идёт по верхней строчке. Остаток 1 идёт в нижнюю строчку.
4) 61 : 2 = 30 (остаток 1). Число 30 - следующее число по верхней строчке.
Остаток 1 - следующее по нижней строчке.
5) Делим 30 на 2, Делится без остатка
30 : 2 = 15 (ост.0) 15 идёт по верхней строчке.
0 идёт по нижней строчке
6) Деление цифр верхнего ряда на 2продолжаем до тех пор, пока число не
закончится.
В нижней строчке у нас будут только единицы и нули.
7) Начинать записывать число в двоичной системе счисления <u>необходимо </u>
<u> справа налево</u>, т.е. с конца, как показано стрелочкой.
И у нас получится 1111011
Ответ: 123 = 1111011 в двоичной с/с.
-----------------------------------------------------------------------------------------------------------------
Если что-то не поймёшь, пиши сообщения на мой профиль.
<u />
У меня получилось 1 решение при 001
_______________