dentinnsmr467
?>

На вход алгоритма подаётся натуральное число N. Алгоритм строит по нему новое число R следующим образом. Строится двоичная запись числа N. К этой записи дописываются справа ещё два разряда по следующему правилу: если N делится нацело на 4, в конец числа (справа) дописывается сначала ноль, а затем ещё один ноль; если N при делении на 4 даёт в остатке 1, то в конец числа (справа) дописывается сначала ноль, а затем единица; если N при делении на 4 даёт в остатке 2, то в конец числа (справа) дописывается сначала один, а затем ноль; если N при делении на 4 даёт в остатке 3, в конец числа (справа) дописывается сначала один, а затем ещё одна единица. Например, двоичная запись 1001 числа 9 будет преобразована в 100101, а двоичная запись 1100 числа 12 будет преобразована в 110000. Полученная таким образом запись (в ней на два разряда больше, чем в записи исходного числа N) является двоичной записью числа R − результата работы данного алгоритма. Укажите максимальное число R, меньшее 111, которое может являться результатом работы данного алгоритма. В ответе это число запишите в десятичной системе счисления.

Информатика

Ответы

Никита_Тузов

ответ:

. в нужно вывести все составные числа из промежутка [2; n]. код программы:

program lab3;

var i,n,j,s,l: integer;

m: real;

begin

readln (n);

for i: =2 to n do

begin

s: =trunc (sqrt (i));

for l: =2 to s do

begin

m: = i mod l;

if m=0 then

write (' ',i);

end;

end;

end.

но проблема - как только s становится больше 2, составные числа начинают несколько раз повторятся, т.к., например 12 делится и на 2 и на 3. вопрос: как мне сделать выход из цикла после первого успешного деления?

var

i, n, j, s, l: integer;

m: real;

begin

readln(n);

for i : = 2 to n do

begin

s : = trunc(sqrt(i));

for l : = 2 to s do

begin

m : = i mod l;

if m = 0 then

begin

write(' ', i);

break;

Ответить на вопрос

Поделитесь своими знаниями, ответьте на вопрос:

На вход алгоритма подаётся натуральное число N. Алгоритм строит по нему новое число R следующим образом. Строится двоичная запись числа N. К этой записи дописываются справа ещё два разряда по следующему правилу: если N делится нацело на 4, в конец числа (справа) дописывается сначала ноль, а затем ещё один ноль; если N при делении на 4 даёт в остатке 1, то в конец числа (справа) дописывается сначала ноль, а затем единица; если N при делении на 4 даёт в остатке 2, то в конец числа (справа) дописывается сначала один, а затем ноль; если N при делении на 4 даёт в остатке 3, в конец числа (справа) дописывается сначала один, а затем ещё одна единица. Например, двоичная запись 1001 числа 9 будет преобразована в 100101, а двоичная запись 1100 числа 12 будет преобразована в 110000. Полученная таким образом запись (в ней на два разряда больше, чем в записи исходного числа N) является двоичной записью числа R − результата работы данного алгоритма. Укажите максимальное число R, меньшее 111, которое может являться результатом работы данного алгоритма. В ответе это число запишите в десятичной системе счисления.
Ваше имя (никнейм)*
Email*
Комментарий*

Популярные вопросы в разделе

inikonovich
ИвановичБогословский280
skononova01
Александровна-Грузман
andrey
Ахади
leeteukism
sveta300856729
shugayzhanna6
zdv686857
Yuliya_Viktoriya316
soclive7762
Guskov
langprint
iraimironova