A={0,1}. для непустого слова p определить, является ли оно записью степени двойки (1, 2, 4, 8, …) в двоичной системе счисления. ответ: слово 1 (является) или слово 0.
Var ar:array[1..n] of integer; k,i,c:integer; begin randomize; writeln('First array:'); for i:=1 to n do begin ar[i]:=random(9); write(ar[i]:4); end; writeln; write('Enter index:'); readln(k); if (k=1) or (n=1) then begin writeln('Mwahahahaha(no)'); exit; end; c:=ar[k+1]; ar[k+1]:=ar[k-1]; ar[k-1]:=c; writeln('Final array:'); for i:=1 to n do write(ar[i]:4); end.
Пример работы программы: First array: 1 8 4 2 8 5 8 7 1 8 Enter index:3 Final array: 1 2 4 8 8 5 8 7 1 8
Сначала смотрим на то, что происходит в цикле с переменной а. К ней добавляются по 2 единицы за шаг цикла. Так как программа выводит значение а, равное 4, делаем вывод, что цикл повторится 2 раза. Далее посмотрим на условие окончания. Цикл с предусловием while будет выполниться, пока x больше 0, а в самом цикле происходит целочислительное деление x на 1000, что означает "отщепление" от числа по 3 цифры младших разрядов. Из этого следует, что число должно иметь как минимум 4 цифры, чтобы цикл повторился 2 раза. Значение b должно быть равно 13. 13 - простое число. Следовательно, равно 1*13. Поставим 13 в левый конец числа, а 1 - в правый. Третий и второй знаки будут равны 0. Таким образом получим число 13001. ответ: 13001
Const
n=10;
Var
ar:array[1..n] of integer;
k,i,c:integer;
begin
randomize;
writeln('First array:');
for i:=1 to n do
begin
ar[i]:=random(9);
write(ar[i]:4);
end;
writeln;
write('Enter index:');
readln(k);
if (k=1) or (n=1) then
begin
writeln('Mwahahahaha(no)');
exit;
end;
c:=ar[k+1];
ar[k+1]:=ar[k-1];
ar[k-1]:=c;
writeln('Final array:');
for i:=1 to n do
write(ar[i]:4);
end.
Пример работы программы:
First array:
1 8 4 2 8 5 8 7 1 8
Enter index:3
Final array:
1 2 4 8 8 5 8 7 1 8
Далее посмотрим на условие окончания. Цикл с предусловием while будет выполниться, пока x больше 0, а в самом цикле происходит целочислительное деление x на 1000, что означает "отщепление" от числа по 3 цифры младших разрядов. Из этого следует, что число должно иметь как минимум 4 цифры, чтобы цикл повторился 2 раза.
Значение b должно быть равно 13. 13 - простое число. Следовательно, равно 1*13. Поставим 13 в левый конец числа, а 1 - в правый. Третий и второй знаки будут равны 0. Таким образом получим число 13001.
ответ: 13001