安徽对口高考Python试题选:输入一个正整数,然后输出该整数的3的幂数相加形式。

第一步:求出3的最高次幂是多少

guo=int(input("请输入一个正整数:"))

i=guo

a=0

while i>=0:

if 3**i<=guo:

a=i

break

i=i-1
print(a)#此语句为了看懂题目,题目中不需要打印出最高幂数

第二步:新建一个列表,用于存放3的幂。

b=a

m=0

s=\[\]

while True:

m=m+3**b

if m<=guo:

s.append(b)

else :

m=m-3**b

b=b-1

if m==guo:

break
print(s)#此语句为了看懂题目,题目中不需要打印出列表

第三步,根据列表中,定出3的幂数相加形式

w=""

for j in range(len(s)):

if j!=len(s)-1:

w=w+"3**"+str(sj)+"+"

else:

w=w+"3**"+str(sj)

print(str(guo)+"="+w)

如打印出来的实例

整个代码如下:

python 复制代码
guo=int(input("请输入一个正整数:"))
i=guo

while i>=0:
    if 3**i<=guo:
        a=i
        break
    i=i-1
print(a)
b=a
m=0
s=[]
while True:
    m=m+3**b
    if m<=guo:
        s.append(b)
    else :
        m=m-3**b
        b=b-1
    if m==guo:
      break

w=""
for j in range(len(s)):
    if j!=len(s)-1:
        w=w+"3**"+str(s[j])+"+"
    else:
        w=w+"3**"+str(s[j])
print(str(guo)+"="+w)
相关推荐
陈年老古董7 分钟前
PyTorch 实现 MNIST 手写数字识别学习笔记
笔记·python·深度学习·学习
always_TT8 分钟前
【Python 字符串格式化:format() 方法】
android·开发语言·python
小义_12 分钟前
JDK 深度解析
java·linux·开发语言·python·面试
SendTomo15 分钟前
send.wang:基于浏览器WebRTC实现无客户端文件互传
网络·python·网络协议·webrtc·p2p
whcyhhh34 分钟前
头歌实践教学平台:大数据存储2023(十四下答案)
大数据·数据库·python
Capricorn198841 分钟前
Ox Alpha 1M 上下文科研引用失真怎么排查?知芽 Notebook Skill 技术链路实操
人工智能·笔记·python·深度学习·知识图谱·论文笔记
常山云栈43 分钟前
如何理解python中的鸭子模(类)型?
开发语言·python
weixin1997010801643 分钟前
《alibaba.idle.isv.order.ship 接入实录:闲鱼订单发货回传的5个隐式约束》(附Python源码)
服务器·前端·python
y = xⁿ1 小时前
DeepSeek harness工具系统什么设计的?
开发语言·python
烂蜻蜓1 小时前
Flask入门教程(十五):错误处理与日志——打造健壮的Web应用
前端·python·flask