Ответы
1. Если трехзначное число n, то его первая цифра (число сотен) - это n // 100 (// - целочисленное деление), вторая цифра n // 10 % 10 (% - операция взятия остатка), третья цифра - n % 10. Проходим в цикле, находим для каждого числа сумму цифр и, если она четная (т.е. если остаток от деления на 2 равен нулю), выводим на экран.
Код (Python 3):
for n in range(100, 1000):
a = n // 100
b = n // 10 % 10
c = n % 10
if (a + b + c) % 2 == 0:
print(n)
Первые 5 строчек вывода:
101
103
105
107
109
2. Если st > 0, нужно st раз умножить число само на себя. Если st < 0, то нужно st раз умножить сам на себя число 1/n. Если st = 0, то ответ 1.
При st ≤ 0 степень не определена, если n = 0.
Код (Python 3):
n, st = int(input()), int(input())
if st <= 0 and n == 0:
# тут какая-то обработка ошибки, я просто выведу сообщение
print('Неверные параметры')
else:
if st == 0:
print(1)
else:
if st < 0:
n = 1/n
product = 1
for _ in range(abs(st)):
product *= n
print(product)
Пример ввода 1:
2
10
Пример вывода 1:
1024
Пример ввода 2:
-10
-3
Пример вывода 2:
-0.0010000000000000002
(Примечание: операции с плавающей точкой могут быть неточными. Во втором случае вместо точного ответа получилось приближенное)