Идея: сгенерировать трёхзначное число N, взять первую цифру как основание (base = N // 100), третью цифру как показатель степени (exp = N % 10), и посчитать base^exp.
Пример кода на Python (использовать целочисленную степень, чтобы получить целое число):
import random
def compute_power_from_random_three_digit():
n = random.randint(100, 999) # трёхзначное число
base = n // 100 # первая цифра
exp = n % 10 # третья цифра
result = pow(base, exp) # или base ** exp
print(f"Число: {n}, основание: {base}, показатель: {exp}, результат: {result}")
if name == "main":
compute_power_from_random_three_digit()
Notes:
- Если третья цифра равна 0, получаем степень 0 и результат будет 1 (как и положено для любой ненулевой основы).
- Первая цифра будет всегда от 1 до 9, так как число от 100 до 999.
Альтернативы:
- Ввод числа вручную (без рандома):
- base = n // 100
- exp = n % 10
- result = base ** exp
- Пример на C++ (для полноты):
#include
#include
int main() {
std::random_device rd;
std::mt19937 gen(rd());
std::uniform_int_distribution dist(100, 999);
int n = dist(gen);
int base = n / 100;
int exp = n % 10;
long long res = 1;
for (int i = 0; i < exp; ++i) res *= base;
std::cout << "Число: " << n << " основание=" << base
<< " показатель=" << exp << " результат=" << res << std::endl;
return 0;
}
Если нужно, могу адаптировать под конкретный язык обучения или требования к вводным данным.