人工智能——第一次作业

本文涵盖了Python的基础知识,包括输入输出、条件判断、循环控制、函数使用等,并通过实例演示了猴子吃桃问题的解决方案,以及如何进行数字的质因数分解。此外,还涉及到了字符串处理,如统计英文大小写字母、空格和数字的数量。同时,介绍了随机数生成和成绩等级划分的函数实现,展示了Python在实际问题中的应用。
摘要由CSDN通过智能技术生成

1、提示用户从键盘上输入一个有效的年份,在屏幕上打印这个年份是否为闰年。

注:凡符合下面两个条件之一的年份是闰年。

(1)能被4整除但不能被100整除。

(2)能被400整除。

year = int(input("请输入年份:"))
result = "是闰年" if((year % 4 == 0 and year % 100 != 0) or (year % 400 == 0)) else "不是闰年"
print(str(year) + "年" + result + "!")

 测试结果:

2、从键盘输入三个数,输出其最大者。

print("请输入第一个数字:", end="")
a = int(input())
print("请输入第二个数字:", end="")
b = int(input())
print("请输入第三个数字:", end="")
c = int(input())
Max = (a if a >= b else b) if ((a if a >= b else b) >= c) else c
print("最大的数字为:" + str(Max))

 测试结果:

3、编程,解决猴子吃桃问题。

猴子第一天摘下若干个桃子,当即吃了一半,还不过瘾,又多吃了一个。第二天早上又将剩下的桃子吃掉一半,又多吃了一个。以后每天早上都吃了前一天剩下的一半零一个。到第10天早上想吃时,只剩下一个桃子了。求第一天共摘多少个桃子。

peach = 1  #最后一天仅剩下1个桃子
for day in range(9, 0, -1):     #天数递减
    peach = 2*(peach+1)
print("第一天共摘"+str(peach)+"个桃子")

 测试结果:

4、输入一串西文字符,分别统计出其中英文大写字母、英文小写字母、空格、数字和其他字符的个数。

big = 0
small = 0
blanks = 0
numbers = 0
others = 0

s = str(input("输入一串西文字符:"))
for i in s:
    if 'A' <= i <= 'Z':
        big += 1
    elif 'a' <= i <= 'z':
        small += 1
    elif i == ' ':
        blanks += 1
    elif '0' <= i <= '9':
        numbers += 1
    else:
        others += 1
print("英文大写字母的个数为:"+str(big)+"个")
print("英文小写字母的个数为:"+str(small)+"个")
print("空格的个数为:"+str(blanks)+"个")
print("数字的个数为:"+str(numbers)+"个")
print("其他字符的个数为:"+str(others)+"个")

 测试结果:

5、从键盘输入一个2-1000之间的整数n,对其进行质因数分解,输出分解后的式子。

例如:输入60,输出60=2*2*3*5

a = int(input("请输入一个2-1000之间的任意一个整数:"))
print(str(a)+"=", end='')
while a > 1:
    for i in range(2, a+1):
        if a % i == 0:
            a = int(a/i)
            if a == 1:
                print(i)
            else:
                print(str(i) + '*', end='')
            break

  测试结果:

6、利用random标准库,编写程序随机生成20个6位密码,要求密码只能由字母A-Z和数字1-9组成。

import random
for i in range(0,20,1):
    print(random.choice(['A','B','C','D',"E","F","G","H","I",'J',"K",'L',"M",'N','O','P','Q',"R",'S','T','U','V','W','X','Y','Z',1,2,3,4,5,6,7,8,9]),end='')

测试结果:

7、编写函数level,要求可以根据输入的成绩判断其等级。

等级设定:90-100为优秀   80-89为良好    70-79为中等  60-69为及格  小于60为不及格。

def level(a):
    if a > 90:
        print("优秀")
    elif 80 <= a <= 89:
        print("良好")
    elif 70 <= a <= 79:
        print("中等")
    elif 60 <= a <= 69:
        print("及格")
    else:
        print("不及格")


b = int(input("请输入成绩:"))
if 0 <= b <= 100:
    level(b)
else:
    print("您输入的成绩有误,请重新输入!")

 测试结果:

8、编写函数sumall,要求可以将接收任意多个整数并输出所有整数之和。例如输入2,4,6 则输出12,输入3,5,7,9则输出24。

提示nums = tuple(map(int, input("please input numbers:").split(',')))  #将输入的多个数字转换为元组形式。
def sumall(nums):
    b = 0
    for i in nums:
        b += i
    return b


a = tuple(map(int, input("please input numbers:").split(',')))
print("元组为:"+str(tuple(a)))
print("和为:"+str(sumall(a)))

 测试结果为:

 

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值