Укажите наименьшее из таких чисел x, при вводе которого алгоритм печатает сначала 3, а потом 4. var x, a, b: integer; begin readln(x); a: =0; b: =0; while x> 0 do begin a: =a + 1; if b < (x mod 8) then b: =x mod 8; x: =x div 8; end; writeln(a); write(b); end.

Бригман Бригман    2   06.10.2019 01:10    0

Ответы
YakovlevaJulia2004 YakovlevaJulia2004  09.10.2020 22:54

При x = 68;

Как проверял:

var

 x, a, b, i: integer;

begin

 for i := 1 to 1000 do

 begin

   x := i;

   a := 0;  

   b := 0;

   while x > 0 do

   begin

     a := a + 1;

     if b < (x mod 8)

       then b := x mod 8;

     x := x div 8;

   end;

   if (a = 3) and (b = 4) Then

   begin

     writeln(i);

     break;

   end;

 end;  

end.

Взял 1000 потому что думал, что должно быть меньше. Если бы программа не сработала взял бы либо отрицательные числа, либо больше тысячи (возможно бы пришлось изменить тип данных).

ПОКАЗАТЬ ОТВЕТЫ
Другие вопросы по теме Информатика