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
1) there are 4 rooms in this house. (подставите количество сами, т.к. не вижу в каком 2)there are 2 bedrooms in this house. 3) there in his living (аналогично на остальные вопросы), т.к. не видно картинки, чтобы вам перечислить,что в зале, в обеденной комнате, ванне, спальне и ученическом столе).
За 2. Взвешиваем по три монеты, если одна легче, то фальшивая среди этих трех, если равновесие, то фальшивая среди трех невзвешененных, потом по одной из тройки где фальшивая, и рассуждаем так же, если одна из монет легче, то она фальшивая, а если равновесие, то фальшивая невзвешенная. Точно также из 27 монет можно определить фальшивую за 3 взвешивания, из 81 за 4, из 3 в степени N монет - за N взвешиваний. А если число монет не равно 3 в степени N, то число взвешиваний равно ближайшей большей степени тройки. То есть, например, если монет 74 - то одну монету тоже можно определить за 4 взвешивания, как и среди 81 монеты. А вот если монет 82, то уже только за 5 взвешиваний - ближайшая большая степень двойки - 243 - 2 в степени 5.
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