Python 实验一

实验一 程序设计结构

实验目的
(1)熟悉程序设计结构的三种方式。
(2)掌握if单分支结构、if二分支语句、if多分支语句及if语句嵌套的使用方法。
(3)掌握while语句的使用方法。
(4)掌握for语句的使用方法。
(5)掌握循环嵌套的使用方法。

实验内容
1、从键盘输入3个数赋给变量a、b、c,按从大到小的顺序输出。

"""
@Author:*Melon
@Time:2022.11.21
@CSDN:*Melon
"""

print("输入三个数,从大到小排列")
a = input("输入第一个数字")
b = input("输入第二个数字")
c = input("输入第三个数字")
list1 = [a, b, c]
list1.sort()
list.reverse(list1)  # 反转
print(list1)

2、给定一个不多于5位的正整数,要求:计算该正整数的位数;逆序打印出各位数字。

"""
@Author:*Melon
@Time:2022.11.21
@CSDN:*Melon
"""
# 2、给定一个不多于5位的正整数,要求:计算该正整数的位数;逆序打印出各位数字。
a = input("输入一个不多于5位的正整数:")
a1 = list(a)
print(a1)
print("该正整数的位数为:", len(a1))
list.reverse(a1)
print("逆序打印为:", a1)

3、判断并输出100~1000之间的所有素数。

"""
@Author:*Melon
@Time:2022.11.21
@CSDN:*Melon
"""
# 3、判断并输出100~1000之间的所有素数。
l1 = list()
for i in range(100, 1000):
    for m in range(2, i):
        if i % m == 0:  # 如果1 和它本身之间的数能除它,就不是素数,
            break
    else:
        l1.append(i)
print(l1, "是素数")  # 否者不是素数

4、输入年份和月份,判断该月有多少天。
提示:
(1)1、3、5、7、8、10、12月份有31天,4、6、9、11月份有30天。
(2)2月闰年有29天,非闰年有28天。
(3)年份能被4除且不能被100整除,或者能被400整除,则是闰年。

"""
@Author:*Melon
@Time:2022.11.21
@CSDN:*Melon
"""
# 4、输入年份和月份,判断该月有多少天。
# 提示:
# (1)1、3、5、7、8、10、12月份有31天,4、6、9、11月份有30天。
# (2)2月闰年有29天,非闰年有28天。
# (3)年份能被4除且不能被100整除,或者能被400整除,则是闰年。
year = int(input("输入年份:"))
month = int(input("输入月份:"))
x = int(year) % 400
if x != 0:
    if month == 2:
        month_day = 28
    elif month == 4 or 6 or 9 or 11:
        month_day = 30
    else:
        month_day = 31
else:
    if month == 2:
        month_day = 29
    elif month == 4 or 6 or 9 or 11:
        month_day = 30
    else:
        month_day = 31
print("该月有:", month_day, "天")

5、编程输出用星号组成的菱形。

"""
@Author:*Melon
@Time:2022.11.21
@CSDN:*Melon
"""
#    *
#   ***
#  *****
# *******
#  *****
#   ***
#    *
layer = int(input("请输入打印的奇数行数:"))
while layer % 2 == 0:  # 因为打印菱形要上下对称,所以行数要单数
    layer = int(input("必须是奇数,请输入重新打印的行数:"))

for i in range(1, (layer // 2 + 2)):
    num1 = layer // 2 + 1 - i
    for j in range(num1):
        print(" ", end="")

    num2 = 2 * i - 1
    for j in range(num2):
        print("*", end="")
    print("")

for i in range((layer // 2), 0, -1):
    num1 = layer // 2 + 1 - i
    for j in range(num1):
        print(" ", end="")

    num2 = 2 * i - 1
    for j in range(num2):
        print("*", end="")
    print("")

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

*Melon

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值