目录
1、求一个十进制的数值的二进制的0、1的个数
2、实现一个用户管理系统(要求使用容器保存数据) [{name: xxx, pass: xxx, ……},{},{}]
3、求1~100之间不能被3整除的数之和
4、给定一个正整数N,找出1到N(含)之间所有质数的总和
5、计算PI(公式如下:PI=4(1-1/3+1/5-1/7+1/9-1.......)
6、给定一个10个元素的列表,请完成排序(注意,不要使用系统api)
7、求 a+aa+aaa+.......+aaaaaaaaa=?其中a为1至9之中的一个数,项数也要可以指定。
8、合并两个有序数组,合并后还是有序列表
9、给定一个非负整数数组A,将该数组中的所有偶数都放在奇数元素之前
1、求一个十进制的数值的二进制的0、1的个数
num = int(input("num:"))
bin_num = bin(num)
count_0 = 0
count_1 = 0
bin_list_num = list(bin_num[2:])
for i in bin_list_num:if int(i) == 0:count_0 += 1else:count_1 += 1
print(f'将{num}转换为二进制为:{bin(num)[2:]}')
print(f'其中0的数量为:{count_0}个')
print(f'其中1的数量为:{count_1}个')
2、实现一个用户管理系统(要求使用容器保存数据) [{name: xxx, pass: xxx, ……},{},{}]
users = []# 用户类,包含基本信息
class User:def __init__(self, name, password, email=None):self.name = nameself.password = passwordself.email = email # 可选的电子邮件字段def __str__(self):return f"User(Name: {self.name}, Password: {self.password}, Email: {self.email})"# 用户管理系统
class UserManager:def __init__(self):self.users = users def add_user(self, user):self.users.append(user.__dict__)print(f"User {user.name} added successfully.")def get_user(self, name):for user_info in self.users:if user_info['name'] == name:return user_inforeturn Nonedef list_users(self):for user_info in self.users:print(user_info)user_manager = UserManager()# 添加用户
user1 = User('张三', 'password123')
user2 = User('李四', 'lisi963')
user_manager.add_user(user1)
user_manager.add_user(user2)# 列出所有用户
print("List of users:")
user_manager.list_users()# 根据用户名获取用户信息
lisi_info = user_manager.get_user('李四')
if lisi_info:print(lisi_info)
3、求1~100之间不能被3整除的数之和
sum_num = 0
for i in range(1,101):if i % 3 != 0:print(i)sum_num += i
print(sum_num)
4、给定一个正整数N,找出1到N(含)之间所有质数的总和
n = int(input("int:"))
sum_num = 0
def is_prime(n):if n < 2:return Falseelif n == 2:return Trueelse:for i in range(2, n):if n % i == 0:return Falseelse:return Truefor i in range(1,n+1):if is_prime(i) == True:print(i)sum_num += i
print("sum_num:",sum_num)
5、计算PI(公式如下:PI=4(1-1/3+1/5-1/7+1/9-1.......)
def calculate_pi(iterations):pi = 0.0for i in range(iterations):if i % 2 == 0:pi += 1 / (2 * i + 1)else:pi -= 1 / (2 * i + 1)return 4 * pipi = calculate_pi(1000)
print(f"pi: {pi}")
6、给定一个10个元素的列表,请完成排序(注意,不要使用系统api)
def bubble_sort(arr):n = len(arr)for i in range(n):for j in range(0, n-i-1):if arr[j] > arr[j+1]:arr[j], arr[j+1] = arr[j+1], arr[j]my_list = [64, 34, 25, 12, 22, 11, 90, 88, 7, 16, 4]
bubble_sort(my_list)
print("Sorted list:")
print(my_list)
7、求 a+aa+aaa+.......+aaaaaaaaa=?其中a为1至9之中的一个数,项数也要可以指定。
def sum_of_series(a, n):if not (1 <= a <= 9) or n <= 0:print("重新输入")sum_i = 0current_term = 0power_of_ten = 1for i in range(n):current_term = current_term * 10 + asum_i += current_termpower_of_ten *= 10return sum_ia = 3
n = 5
result = sum_of_series(a, n)
print(f"a + aa + aaa + ... + aaaa (where a={a} and n={n}) is: {result}")
8、合并两个有序数组,合并后还是有序列表
def merge_sorted_arrays(arr1, arr2):merged_array = arr1 + arr2merged_array.sort()return merged_arrayarr1 = [1, 3, 5]
arr2 = [2, 4, 6]sorted_merged_array = merge_sorted_arrays(arr1, arr2)
print("合并后的排序数组:", sorted_merged_array)
9、给定一个非负整数数组A,将该数组中的所有偶数都放在奇数元素之前
def move(arr):index = 0 # 偶数的当前位置for num in arr:if num % 2 == 0:# 将偶数移动到数组的前端arr[index], num = num, arr[index]# 移动偶数位置指针index += 1return arrA = [1, 2, 3, 4, 5, 6, 7, 8]
A = move(A)
print(A)