编写程序伪代码,计算一个数字的第一个和最后一个数字,使用%和log(x,10)

如输入数字为:23456

输出的数字分别为2和6

当前我的代码:

import math

a = input("请输入一行数字")
a= int(a)
b = a% 10
print("最后一位数为:",b)

c= str(a)
d = c[0]
d= int(d)

while ((a//10)<(10**(d-1)) or (a//10)>=(10**(d))):
a=a//10

e =int(math.log(a,10))
print("第一位数字为:",e)

输入数据依次增大则正确,数字之间是乱序的话,不正确。

这个代码可以怎么修改?

说下思路吧,log(x, 10)的目的是求一个数字有几位。
while ((a//10)<(10**(d-1)) or (a//10)>=(10**(d))):
a=a//10
这个循环你在重复做log10就能做的事情
%的目的是求某一位的值。