一、求一个十进制的数值的二进制的0、1的个数
num = int(input("请输入数字:"))
def numt(num):
a = bin(num)
print(f"二进制为{a}")
b = str(a).count("1")
return b
print(numt(num))
二、实现一个用户管理系统(要求使用容器保存数据)
[{name: xxx, pass: xxx, ……},{},{}]
三、求1~100之间不能被3整除的数之和
a = 0
for x in range(1, 101):
if x % 3 == 0:
continue
else:
a = x + a
print(f"百位以内不可被三整除的数的和为:{a}")
四、给定一个正整数N,找出1到N(含)之间所有质数的总和
n = int(input("请输入一个数字:"))
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}")
numn(n)
五、计算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()
六、给定一个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], [mina]
return a
a = [1, 3, 5, 7, 9, 2, 4, 6, 8, 10]
print(a)
print(f"排序后为:{pai(a)}")
七、求 a+aa+aaa+.......+aaaaaaaaa=?其中a为1至9之中的一个数,项数也要可以指定。
def na(x, y):
a = 0
for i in range(1, y + 1):
j = int(f"{x}" * 1)
a += j
return a
x = int(input("输入一个1~9的数:"))
y = int(input("输入项数:"))
print(na(x, y))
八、合并两个有序数组,合并后还是有序列表
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))
九、给定一个非负整数数组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))
十、给定一个包含n+1个整数的数组nums,其数字在1到n之间(包含1和n),
可知至少存在一个重复的整数,假设只有一个重复的整数,请找出这个重复的数
[1,6,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"{pairs(a)}这个数字不是成对出现的")
十一、找出10000以内能被5或6整除,但不能被两者同时整除的数(函数)
def func():
for i in range(1, 10001):
if (i % 5 == 0 or i % 6 ==0 ):
if i % 5 == 0 and i % 6 ==0:
continue
print(i)
func()
十二、写一个方法,计算列表所有偶数下标元素的和(注意返回值)
def ls_conut_o(A):
count = 0
for i in A:
if i % 2 == 0:
b = A.index(i)
count += b
print(count)
A = [1,2,3,4,4]
ls_conut_o(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