Форум программистов, компьютерный форум, киберфорум
Python: Решение задач
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.76/29: Рейтинг темы: голосов - 29, средняя оценка - 4.76
0 / 0 / 0
Регистрация: 20.01.2021
Сообщений: 15

Возведите число x в степень n, используя лишь операцию умножения

20.01.2021, 19:48. Показов 6502. Ответов 14
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
1. Даны натуральные числа x и n. Возведите число x в степень n, используя лишь операцию умножения. Пример: 23 = 2*2*2 = 8.
0
cpp_developer
Эксперт
20123 / 5690 / 1417
Регистрация: 09.04.2010
Сообщений: 22,546
Блог
20.01.2021, 19:48
Ответы с готовыми решениями:

Дано целое число N(> 1) и A. Возвести все числа Фибоначчи в степень A, используя только операцию умножения
Добрый вечер! Подскажите пожалуйста, правильно ли я решил задачу: Дано целое число N(> 1) и A. Возвести все числа Фибоначчи в...

Вычислить степень числа не используя операцию умножения
Задача: вычислить a в степени n(оба целые, задаются в ходе программы) не используя операцию умножения. Вот что сам пока набросал: ...

Возведение в степень, используя лишь операции сложения, умножения и вычитания
Дано действительное число х. Не пользуясь никакими други*ми арифметическими операциями, кроме умножения, сложения и вычитания, вычислить...

14
Автоматизируй это!
Эксперт Python
 Аватар для Welemir1
7392 / 4819 / 1246
Регистрация: 30.03.2015
Сообщений: 13,694
Записей в блоге: 29
20.01.2021, 20:02
Ellidan,
Python
1
2
3
>>> solution = lambda x,n: x if n==1 else solution(x,n-1)*x
>>> solution(2,3)
8
0
Эксперт PythonЭксперт Java
19530 / 11067 / 2931
Регистрация: 21.10.2017
Сообщений: 23,294
20.01.2021, 20:03
Welemir1, косяк. У тебя - присутствует. )))
0
Автоматизируй это!
Эксперт Python
 Аватар для Welemir1
7392 / 4819 / 1246
Регистрация: 30.03.2015
Сообщений: 13,694
Записей в блоге: 29
20.01.2021, 20:06
iSmokeJC, да, хотел двоечку ему выбить у препода

Python
1
2
3
4
5
6
7
>>> x,n=2,3
>>> result=1
>>> for _ in range(n):
...     result*=x
... 
>>> result
8
1
20.01.2021, 20:20

Не по теме:


Welemir1,

Цитата Сообщение от Welemir1 Посмотреть сообщение
хотел двоечку ему выбить у препода
грязно

0
Заяц, просто Заяц.
 Аватар для Fury67
666 / 280 / 156
Регистрация: 12.11.2017
Сообщений: 882
20.01.2021, 20:26
Welemir1,
Python
1
(lambda x, n, y = 1: print([y := y * x for i in range(n)][-1])) (int(input()), int(input()))
0
3582 / 2182 / 571
Регистрация: 02.09.2015
Сообщений: 5,510
20.01.2021, 20:32
Python
1
2
3
4
5
6
7
8
9
In [1]: def power(x, n):
   ...:     return (1 if n == 0 else
   ...:         x if n == 1 else
   ...:         power(x * x, n // 2) if n % 2 == 0 else
   ...:         x * power(x, n - 1))
   ...:
 
In [2]: print(power(2, 3) == 8)
True
0
Заяц, просто Заяц.
 Аватар для Fury67
666 / 280 / 156
Регистрация: 12.11.2017
Сообщений: 882
20.01.2021, 21:05
Arsegg, не подходит, у тебя деление нацело, остаток от деления и вычитание есть. А можно только умножение.
0
Эксперт PythonЭксперт Java
19530 / 11067 / 2931
Регистрация: 21.10.2017
Сообщений: 23,294
20.01.2021, 21:29
Python
1
2
3
x = int(input())
y = int(input())
print(eval('*'.join(str(x) * y)))
3
Заяц, просто Заяц.
 Аватар для Fury67
666 / 280 / 156
Регистрация: 12.11.2017
Сообщений: 882
20.01.2021, 23:31
iSmokeJC, это гениально

Добавлено через 47 секунд
Но у меня на тесте 25, 2 не работает ваша программа.

Добавлено через 57 секунд
На любом тесте, где первое число состоит не из одной цифры, не работает
0
Эксперт PythonЭксперт Java
19530 / 11067 / 2931
Регистрация: 21.10.2017
Сообщений: 23,294
21.01.2021, 00:18
Fury67, ну маленько допилить надо
Python
1
print(eval('*'.join([str(x)] * y)))
0
3582 / 2182 / 571
Регистрация: 02.09.2015
Сообщений: 5,510
21.01.2021, 04:49
Цитата Сообщение от Ellidan Посмотреть сообщение
используя лишь операцию умножения
С такой постановкой вопроса задачу не решить, т. к. в range, а также в прочих коллекторах данных (в т. ч. str.join) используется неявно индексация, а это инкремент индекса (в т. ч. суммирование).

P. S. Полагаю, это условие для "умников", которые решили бы так: result = x ** n.
0
Эксперт PythonЭксперт Java
19530 / 11067 / 2931
Регистрация: 21.10.2017
Сообщений: 23,294
21.01.2021, 09:17
Цитата Сообщение от Arsegg Посмотреть сообщение
Полагаю, это условие для "умников"
Да не, это стандартная задача, не привязанная к какому-то конкретному языку, и соответственно не учитывающая внутренних механизмов языка.
Тупо на циклы.

Добавлено через 1 минуту
Хотя, если соблюдать условие вообще конкретно, то и на циклах в тех же сях, джаве и т.д. не прокатит - инкремент\декремент\любое другое изменение счетчика присутствует...
0
3582 / 2182 / 571
Регистрация: 02.09.2015
Сообщений: 5,510
21.01.2021, 09:57
iSmokeJC,
Python
1
2
3
4
5
6
7
8
9
In [1]: from functools import reduce
 
In [2]: from operator import mul
 
In [3]: def power(x, n):
   ...:     return reduce(mul, (x,) * n)
   ...:
 
In [4]: assert power(2, 3) == 8
1
Эксперт PythonЭксперт Java
19530 / 11067 / 2931
Регистрация: 21.10.2017
Сообщений: 23,294
21.01.2021, 10:02
Arsegg, так-то да, изгальнуться можно мнОгими способами
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
raxper
Эксперт
30234 / 6612 / 1498
Регистрация: 28.12.2010
Сообщений: 21,154
Блог
21.01.2021, 10:02
Помогаю со студенческими работами здесь

Возвести число в степень, используя лишь умножение
Найти сумму 2^2+2^3+2^4+...+2^10. Операцию возведения в степень не использовать.

Дано вещественное число а.Используя только операцию умножения, получить:
Долго думала вот накидала тут кое-что: b:=a*a; {a^2} c:=b*b; {a^4} d:=b*b*b;{a^6} e:=b*b*b*a;{a^7} f:=d*b;{a^8} g:=f*a;{a^9} ...

Ввести два числа А и С. - Найти произведение этих чисел, используя только операцию сложения. - Вычислить АС, используя только операцию умножения
Ввести два числа А и С. - Найти произведение этих чисел, используя только операцию сложения. - Вычислить Аc, используя только...

Задано действительное число а. Используя только операцию умножения, получить а2 , а 3 и а17 за шесть сделок
Задано действительное число а. Используя только операцию умножения, получить а2 , а 3 и а17 за шесть сделок.

Возвести число в 4 степень используя только две операции умножения
Написать программу, которая запрашивает вещественное число a и, пользуясь только опeрацией умножения, вычисляет a4 за две операции. и...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
15
Ответ Создать тему
Новые блоги и статьи
SDL3 для Desktop (MinGW): Рисуем цветные прямоугольники с помощью рисовальщика SDL3 на Си и C++
8Observer8 17.03.2026
Содержание блога Финальные проекты на Си и на C++: finish-rectangles-sdl3-c. zip finish-rectangles-sdl3-cpp. zip
Символические и жёсткие ссылки в Linux.
algri14 15.03.2026
Существует два типа ссылок — символические и жёсткие. Ссылка в Linux — это запись в каталоге, которая может указывать либо на inode «файла-ИСТОЧНИКА», тогда это будет «жёсткая ссылка» (hard link),. . .
[Owen Logic] Поддержание уровня воды в резервуаре количеством включённых насосов: моделирование и выбор регулятора
ФедосеевПавел 14.03.2026
Поддержание уровня воды в резервуаре количеством включённых насосов: моделирование и выбор регулятора ВВЕДЕНИЕ Выполняя задание на управление насосной группой заполнения резервуара,. . .
делаю науч статью по влиянию грибов на сукцессию
anaschu 13.03.2026
прикрепляю статью
SDL3 для Desktop (MinGW): Создаём пустое окно с нуля для 2D-графики на SDL3, Си и C++
8Observer8 10.03.2026
Содержание блога Финальные проекты на Си и на C++: hello-sdl3-c. zip hello-sdl3-cpp. zip Результат:
Установка CMake и MinGW 13.1 для сборки С и C++ приложений из консоли и из Qt Creator в EXE
8Observer8 10.03.2026
Содержание блога MinGW - это коллекция инструментов для сборки приложений в EXE. CMake - это система сборки приложений. Здесь описаны базовые шаги для старта программирования с помощью CMake и. . .
Как дизайн сайта влияет на конверсию: 7 решений, которые реально повышают заявки
Neotwalker 08.03.2026
Многие до сих пор воспринимают дизайн сайта как “красивую оболочку”. На практике всё иначе: дизайн напрямую влияет на то, оставит человек заявку или уйдёт через несколько секунд. Даже если у вас. . .
Модульная разработка через nuget packages
DevAlt 07.03.2026
Сложившийся в . Net-среде способ разработки чаще всего предполагает монорепозиторий в котором находятся все исходники. При создании нового решения, мы просто добавляем нужные проекты и имеем. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru