Решения задач acmp.ru
Главная
Вход
Регистрация
Вторник, 29.09.2020, 01:41Приветствую Вас Гость | RSS
Меню сайта

Категории раздела
Pascal [121]
C++ [76]

Поиск

Мини-чат
200

Легкий заработок!

Статистика

Онлайн всего: 1
Гостей: 1
Пользователей: 0

Форма входа

Главная » Файлы » Pascal

0318 Следующее число

Скачать файл можно после просмотра рекламы:

04.06.2012, 18:01
var
n : longint;
i, k, j : integer;
a : array [1..32] of integer;
begin
assign(input,'input.txt'); reset(input);
267
assign(output,'output.txt'); rewrite(output);
read(n); k:=0;
while n>0 do
begin k:=k+1; a[k]:=n mod 2; n:=n div 2 end;
i:=1; while a[i]=0 do i:=i+1;
a[i]:=0; i:=i+1; j:=0;
while a[i]=1 do begin a[i]:=0; i:=i+1; j:=j+1 end;
a[i]:=1; if i>k then k:=i;
for i:=1 to j do a[i]:=1;
if k=32 then write('2147483648') else
begin
for i:=k downto 1 do n:=n*2+a[i];
write(n)
end
end.
Категория: Pascal | Добавил: shum
Просмотров: 1468 | Загрузок: 0
Всего комментариев: 0
Добавлять комментарии могут только зарегистрированные пользователи.
[ Регистрация | Вход ]
Это интересно!


Copyright MyCorp © 2020