Предмет: Информатика,
автор: Vitalik57941
У исполнителя две команды,которым присвоены номера:1.вычти 1. 2.умножь на 3
Первая из них уменьшает число на экране на 1,а вторая увел его в три раза. Запишитк пооядок команд в поограмме получения из числа 3 числа 16 ,содержащей не более 5 команд,указывая лишь номера команд.
Ответы
Автор ответа:
0
procedure TForm1.Button1Click(Sender: TObject);
var
i,j,k:Integer;
Chislo : Integer;
begin
Memo1.Clear;
for i := 0 to 31 do
begin
Chislo := 3;
for j := 0 to 4 do
begin
if ((i and Trunc(IntPower(2,j)))=0) then
Dec(Chislo)
else
Chislo := 3*Chislo;
if (Chislo=16) then
begin
Memo1.Lines.Append('УРА - Нашли');
for k := 0 to j do
if ((i and Trunc(IntPower(2,k)))=0) then
Memo1.Lines.Append('1')
else
Memo1.Lines.Append('2');
Memo1.Lines.Append('');
end;
end;
end;
end;
var
i,j,k:Integer;
Chislo : Integer;
begin
Memo1.Clear;
for i := 0 to 31 do
begin
Chislo := 3;
for j := 0 to 4 do
begin
if ((i and Trunc(IntPower(2,j)))=0) then
Dec(Chislo)
else
Chislo := 3*Chislo;
if (Chislo=16) then
begin
Memo1.Lines.Append('УРА - Нашли');
for k := 0 to j do
if ((i and Trunc(IntPower(2,k)))=0) then
Memo1.Lines.Append('1')
else
Memo1.Lines.Append('2');
Memo1.Lines.Append('');
end;
end;
end;
end;
Приложения:
Похожие вопросы
Предмет: Математика,
автор: ucernikova715
Предмет: Українська мова,
автор: Аноним
Предмет: Русский язык,
автор: anamorozova591
Предмет: Алгебра,
автор: 123Михаил123
Предмет: Математика,
автор: W1nk