Написать программку на паскалеЗадано целое число N. В ячейку памяти вычислительной

Написать программку на паскале
Задано целое число N. В ячейку памяти вычислительной машины записывается его двоичное представление (размер ячейки 1 байт). Над содержимым ячейки производится преобразование: циклический сдвиг на лево на одну позицию. Все числа двоичного числа сдвигаются на лево на одну позицию, при этом старший бит переходит в младший. Преображение повторяется восемь раз (после заключительного преображенья число становится начальным).
Напишите программу, которая по введенному естественному десятичному числу N, вычисляет наибольшее из десятичных чисел, приобретенных в процессе преобразования.
Например: 201 представлено в ячейке памяти как 11001001. После первого сдвига на лево получаем число 10010011, это подходит десятичному числу 147.
Формат входных данных
1-ая строчка ввода содержит неотрицательное целое число N.
Формат выходных данных
Выведите единственное целое число R наибольшее число, приобретенное в процессе преображений.
Ограничения
0 N 255
Пример входных и выходных данных
Входные данные
Выходные данные

1
128

143
248

Задать свой вопрос
1 ответ

PascalABC.NET 3.4.2, сборка 1837 от 11.10.2018

Внимание! Если программка не работает, обновите версию!

function Dec2Bin(t: integer): string;

begin

 var r: string := '';

 while t gt;= 2 do

   (r, t) := (t mod 2 + r, t shr 1);

 r := t + r;

 Result := '0' * (8 - r.Length) + r

end;


function Bin2Dec(s: string): integer;

begin

 Result := 0;

 var p := 1;

 for var i := s.Length downto 1 do

 begin

   Result += (s[i].ToDigit) * p;

   p *= 2

 end

end;


function GenSeqCycle(n: integer): sequence of integer;

begin

 var s := Dec2Bin(n);

 loop 8 do

 begin

   yield Bin2Dec(s);

   s := s[2:] + s[1]

 end

end;


begin

 GenSeqCycle(ReadInteger).Max.Println

end.

, оставишь ответ?
Имя:*
E-Mail:


Добро пожаловать!

Для того чтобы стать полноценным пользователем нашего портала, вам необходимо пройти регистрацию.
Зарегистрироваться
Создайте собственную учетную запить!

Пройти регистрацию
Авторизоваться
Уже зарегистрированны? А ну-ка живо авторизуйтесь!

Войти на сайт