python第五次作业

01.求一个十进制的数值的二进制的0、1的个数

python 复制代码
def ten_to_two (num1):
    """
    求一个十进制的数值的二进制
    """
    a = []
    while True:
        num2 = num1 % 2
        a.append(num2)
        num3 = num1 // 2
        num1 = num3

        if num3 == 0:
            break
    a.reverse()
    return(a)


def conut_0 (a:list):
    """
    统计0的个数
    """
    conut_0 = a.count(0)
    
    return(conut_0)


def conut_1 (a:list):
    """
    统计1的个数
    """
    conut_1 = a.count(1)
    
    return(conut_1)


num1 = int(input('请输入一个整数:'))
i = list(ten_to_two (num1))
print(f"{num1}的二进制数为:",i)
print("其中0有",conut_0(i),"个")
print("其中1有",conut_1(i),"个")

02.实现一个用户管理系统(要求使用容器保存数据)[{name: xxx, pass: xxx, ......},{},{}]

python 复制代码
"""
实现一个用户管理系统(要求使用容器保存数据)
	[{name: xxx, pass: xxx, ......},{},{}]
"""
user_list = []
delete_user_list = []

def show ():
    """
    主界面
    """
    print("=================== 用户管理系统V1.0 ===================")
    print("1. 注册用户")
    print("2. 查询所有用户信息")
    print("3. 查询用户信息")
    print("4.删除用户信息")
    print()
  

def add_user ():
    """
    增加用户
    """
    
    name = input("请输入你的名字:")
    sex  = input("请输入你的性别:")
    age  = input("请输入你的年龄:")
    
    user_dict = {"name":name, "age": age, "sex": sex}
    user_list.append(user_dict)

    print("name:",name,"sex:",sex,"sge:",age)
    print("注册成功!")
    
    print()


def show_all_user ():
    """
    查询所有用户信息
    """
    for user_dict in(user_list):
       
       print("姓名: %s 年龄: %s 性别: %s" % (user_dict["name"],user_dict["age"],user_dict["sex"]))
    print()
       


def find_user():
    """
    查询用户信息
    """
    print()
    user_name = input("请输入要查询的用户姓名:")
    for user_dict in (user_list):
        if user_dict["name"] == user_name:
            print(" 姓名: %s 年龄: %s 性别: %s" % (user_dict["name"],user_dict["age"],user_dict["sex"]))
            print()
            break
        else :
            print("用户不存在!")
            break
    
 
def call ():
    while True :
        show()
        change = input("请选择项目:")
        if change == '1':
            add_user()
        if change == '2':
            show_all_user()
        if change == '3':
            find_user()
        

    

call()
        
    

03.求1~100之间不能被3整除的数之和

python 复制代码
"""
求1~100之间不能被3整除的数之和
"""
print("求1~100之间不能被3整除的数之和:",end="")
j = 0
for i in range(1,101):
    if i % 3 != 0:
        j += i
print(j)
        

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

python 复制代码
"""
给定一个正整数N,找出1到N(含)之间所有质数的总和
"""
def zhishu(x):
	if x > 1:
		flag = True
		for i in range(2,x // 2 + 1):
			if x % i ==0:
				flag = False
				break
		if flag:
			print(f"{x}是质数!")
			return x
		else:
			print(f"{x}不是质数!")
	elif x == 1:
		print("1不是质数")
 
 
a = int(input("请输入一个正整数:"))
count = 0
for x in range(1,a + 1):
	if zhishu(x):
		count += x
print(f'1到{a}(含)之间所有质数的总和为:{count}')

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

python 复制代码
def PI(x):
	count = 0
	n = 0
	for i in range(1,x + 1):
		count += ((-1)**n)*(1/(2 * i -1))
		n +=1
	return count
 
 
a = int(input("请输入长度(整数):"))
b = 4 * PI(a)
print(b)

06.给定一个10个元素的列表,请完成排序

python 复制代码
#给定一个10个元素的列表,请完成排序
num_list = []
def make_list ():
    """
    定义列表
    """
    b = int(input("请定义列表长度:"))
    for i in range(1,b+1):
        c = input(f"请输入第{i}个元素:")
        num_list.append(c)
    print("原列表:",num_list)


def sort_list ():
    """
    排序列表
    """
    num_list.sort()
    print(num_list)
        
            

def call ():
    make_list()
    sort_list()

call()    

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

python 复制代码
def  sum(num1,num2):
	sum = 0
	for i in range(1,num2 + 1):
		num = int(f"{num1}" * i)
		sum += num
	return sum
 
 
num1 = int(input("请输入1~9之间的正整数:"))
num2 = int(input("请输入项数:"))
print(f'所求和为{sum(num1,num2)}')

08.合并两个有序数组,合并后还是有序列表

python 复制代码
#合并两个有序数组,合并后还是有序列表

def even_before_odd(ls=[]):
	for i in range(len(ls)):
		xiabiao = i
		for j in range(i + 1,len(ls)):
			if int(ls[xiabiao]) % 2 != 0:
				xiabiao = j
		ls[i],ls[xiabiao] = ls[xiabiao],ls[i]		
	return ls
 
 
n = int(input('请输入列表包含的元素个数:'))
ls = []
for i in range(1,n+1):
    elem = input(f'请输入列表1的第{i}个元素:')
    ls.append(elem)
 
print(f'原列表为:{ls}')
print(f'调整后的列表为:{even_before_odd(ls)}')

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

python 复制代码
#给定一个非负整数数组A,将该数组中的所有偶数都放在奇数元素之前

num_list = []
num_list_01 =[]
num_list_02 =[]


def make_list ():
    """
    定义列表
    """
    b = int(input("请定义列表长度:"))
    for i in range(1,b+1):
        c = int(input(f"请输入第{i}个元素:"))
        num_list.append(c)
    print("数组:",num_list)

def sort_list ():
    """
    摘出奇数和偶数:
    """
    for i in (num_list):
        if i % 2 == 0:
            num_list_01.append(i)
        else:
            num_list_02.append(i)


def add_list ():
    """
    合并奇数和偶数列表
    """
    num_list_01.extend(num_list_02 )

    print(num_list_01)


def call():
    make_list()
    sort_list()
    add_list()


call()
相关推荐
小爬虫程序猿2 小时前
Python爬虫:深度解析商品详情的自动化之旅
爬虫·python·自动化
小柯J桑_2 小时前
C++:探索AVL树旋转的奥秘
开发语言·c++·avl树
数学人学c语言2 小时前
从熟练Python到入门学习C++(record 6)
c++·python·学习
skaiuijing3 小时前
Sparrow系列拓展篇:消息队列和互斥锁等IPC机制的设计
c语言·开发语言·算法·操作系统·arm
雯0609~5 小时前
c#:winform调用bartender实现打印(学习整理笔记)
开发语言·c#
胜天半子_王二_王半仙6 小时前
c++源码阅读__smart_ptr__正文阅读
开发语言·c++·开源
沐泽Mu6 小时前
嵌入式学习-C嘎嘎-Day08
开发语言·c++·算法
Non importa6 小时前
汉诺塔(hanio)--C语言函数递归
c语言·开发语言·算法·学习方法
LinuxST6 小时前
27、基于Firefly-rk3399中断休眠唤醒实验(按键中断)
linux·开发语言·stm32·嵌入式硬件
Tony_long74836 小时前
Python学习——猜拳小游戏
开发语言·python·学习