Высказывание будет ложным при наименьшем х = 3
Sub z()
n = InputBox("Введите троичное число")
Do
d = d + (n Mod 10) * 3 ^ i
i = i + 1
n = n \ 10
Loop Until n = 0
MsgBox ("Десятичное: " & d & "; восьмеричное: " & Oct(d))
d = 0
i = 0
n = InputBox("Введите восьмеричное число")
Do
d = d + (n Mod 10) * 8 ^ i
i = i + 1
n = n \ 10
Loop Until n = 0
x = d
Do
t = t & (x Mod 3)
x = x \ 3
Loop Until x = 0
t = StrReverse(t)
MsgBox ("Десятичное: " & d & "; троичное: " & t)
End Sub
Немного непонятно, но если сам пробовал, то разберешься
Var
a, b, c: integer;
begin
readln(a, b, c); //вводим a b c
if a > 0 then writeln(a*a) //если a > 0 вывести квадрат a
else
writeln(a); //иначе вывести a
if b > 0 then writeln(b*b) //если b > 0 вывести квадрат b
else
writeln(b); //иначе вывести b
if c > 0 then writeln(c*c) //если c > 0 вывести квадрат c
else
writeln(c); //иначе вывести c
<span>end.</span>
<span>1010101 индекс 2=1*2^6+0*2^5+1*2^4+..+0*2^1+1*2^0=85(10)
85(10)=125(8)
85(10)=55(16)
</span>