Python常见基础编程题(详解三)

作业1:求十进制数字9的二进制编码:求十进制数字9的二进制编码中的1的数量:

def numt(num):
a = bin(num)
print(f"二进制为:{a}")
b = str(a).count("1")
return b
print(numt(9))

作业2:求1~100之间不能被3整除的数之和

a = 0
for x in range(1,101):
if x % 3 == 0:
continue
else:
a = x + a
print(f"百位以内不可被三整除的数和为:{a}")

作业3:给定一个正整数N,找出1到N(含)之间所有质数的总和

def numn(n):
a = 1
for i in range(2,n + 1):
flag = True
for j in range(2,i):
if i % j == 0:
flag = False
break
if flag:
a = i + a
print(f"1到{n}间质数之和为:{a}")
n = int(input("enter a num:"))
numn(n)

作业4:计算PI(公式如下:PI=4(1-1/3+1/5-1/7+1/9-1.......)

def pi():
x = 0
y = 1
for i in range(1,10000,2):
if y % 2 != 0:
x = x + 1 / i
y += 1
elif y % 2 == 0:
x = x - 1 / i
y += 1 
pi = 4 * x
print(f"PI={pi}")
pi()

作业5:给定一个10个元素的列表,请完成排序(注意,不要使用系统api)

def pai(a=[]):
for i in range(len(a)):
mina = i
for j in range(i + 1,len(a)):
if a[mina] > a[j]:
mina = j
a[mina], a[i] = a[i], a[mina]
return a
a = [1,3,5,7,9,2,4,6,8,10]
print(a)
print(f"排序后为:{pai(a)}")

作业6:求 a+aa+aaa+.......+aaaaaaaaa=?其中a为1至9之中的一个数,项数也要可以指定。

def na(x,y):
a = 0
for i in range(1,y + 1):
j = int(f"{x}" * i)
a += j
return a
x = int(input("输入一个1-9的数:"))
y = int(input("输入项数:"))
print(na(x,y))

作业7:合并两个有序数组,合并后还是有序列表

def pai(a=[]):
for i in range(len(a)):
mina = i
for j in range(i + 1,len(a)):
if a[mina] > a[j]:
mina = j
a[mina], a[i] = a[i], a[mina]
return a
a1 = [1,3,5,7,9]
a2 = [0,2,4,6,8]
a1.extend(a2)
print(pai(a1))

作业8:给定一个非负整数数组A,将该数组中的所有偶数都放在奇数元素之前

def jiou(a=[]):
for i in range(len(a)):
if a[i] % 2 != 0:
for j in range(i + 1,len(a)):
if a[j] % 2 == 0:
a[i],a[j] = a[j],a[i]
break
return a
a = [1,2,3,4,5,6,7,8,9]
print(a)
print(jiou(a))

作业9:将10进制数据转换为二进制,并且统计其中的0和1的数量

def er(x):
a = bin(x)
b = str(a).count("1")
c = str(a).count("0") - 1
print(f"{a},count 1:{b},count 0:{c}")
x = int(input("enter a number:"))
er(x)

作业10:给定一个数组,已知数组中的元素都是成对出现,现在数组中只有一个元素没有成对,请找出这个元素。

[1,3,1,2,2,8,8]
def pairs(a=[]):
x = 0
for i in a:
x ^= i
return x
a = [1,3,1,2,2,8,8]
print(f"the num not in pairs is {pairs(a)}")

作业(选做题):

某个人进入如下一个棋盘中,要求从左上角开始走,

最后从右下角出来(要求只能前进,不能后退),

问题:共有多少种走法?

0 0 0 0 0 0 0 0

0 0 0 0 0 0 0 0

0 0 0 0 0 0 0 0

0 0 0 0 0 0 0 0

0 0 0 0 0 0 0 0

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值