=== Python 3.8.3 ===
def fastExp(b, n):
def even(n):
if n % 2 == 0:
return True
return False
if n == 0:
return 1
if even(n):
#Можно было написать return fastExp(b, b/2) ** 2, но операцию возведения в степень использовать нам запретили.
res = fastExp(b, n/2)
return res*res
return b*fastExp(b, n-1)
def main():
base = float(input())
exp = int(input())
print(fastExp(base, exp))
if __name__ == "__main__":
main()
Предложенные тесты проходит. Сам алгоритм быстрого возведения в степень реализован в виде функции fastExp(b, n)
Radiobutton
На элемент CheckBox похож элемент RadioButton или переключатель. Переключатели располагаются группами, и включение одного переключателя означает отключение всех остальных.
Чтобы установить у переключателя включенное состояние, надо присвоить его свойству Checked значение true.
Для создания группы переключателей, из которых можно бы было выбирать, надо поместить несколько переключателей в какой-нибудь контейнер, например, в элементы GroupBox или Panel. Переключатели. находящиеся в разных контейнерах, будут относиться к разным группам:
Элемент RadioButton в Windows Forms
Похожим образом мы можем перехватывать переключение переключателей в группе, обрабатывая событие CheckedChanged. Связав каждый переключатель группы с одним обработчиком данного события, мы сможем получить тот переключатель, который в данный момент выбран:
private void radioButton_CheckedChanged(object sender, EventArgs e)
{
// приводим отправителя к элементу типа RadioButton
RadioButton radioButton = (RadioButton)sender;
if (radioButton.Checked)
{
MessageBox.Show("Вы выбрали " + radioButton.Text);
}
}