1.打印图案
(1)图案1
*
***
*****
*******
*********
***********
num1 = int(input("请输入打印图像的层数:"))
i = 1
while i <= num1:
print("*"*i, end="")
print()
i += 1
(2)图案2
*
**
***
****
*****
******
num1 = int(input("请输入打印图像的层数:"))
i = 1
while i <= num1:
print(" "*(num1 - i), end="")
print("*"*i, end="")
print()
i += 1
(3)图案3
*
***
*****
*******
*********
***********
num1 = int(input("请输入打印图像的层数:"))
i = 1
while i <= num1:
print(" "*(num1 - i), end="")
print("*"*(2 * i - 1), end="")
print()
i += 1
(4)图案4
***********
*********
*******
*****
***
*
num1 = int(input("请输入打印图像的层数:"))
i = 1
while i <= num1:
print(" "*(i - 1), end="")
print("*"*(2 * (num1 - i) + 1), end="")
print()
i += 1
(5)图案5
*
***
*****
*******
*********
***********
*********
*******
*****
***
*
num1 = int(input("请输入打印图像的层数(奇数层):"))
i = 1
num2 = (num1 + 1) / 2
while i <= num2:
print(" "*(int(num2) - i), end="")
print("*"*(2 * i - 1), end="")
print()
i += 1
i = 1
while i <= num2 - 1:
print(" ", end="")
print(" "*(i - 1), end="")
print("*"*(2 * (int(num2) - i) - 1), end="")
print()
i += 1
(6)图案6
*
* *
* *
* *
* *
* *
* *
* *
* *
* *
*
num1 = int(input("请输入打印图像的层数(奇数层):"))
i = 1
num2 = (num1 + 1) / 2
while i <= num2:
if i == 1:
print(" "*(int(num2) - i), end="")
print("*")
else:
print(" "*(int(num2) - i), end="")
print("*", end="")
print(" "*(2 * (i - 1) - 1), end="")
print("*")
i += 1
i = num2 - 1
while i >= 1:
if i == 1:
print(" "*(int(num2) - int(i)), end="")
print("*")
else:
print(" "*(int(num2) - int(i)), end="")
print("*", end="")
print(" "*(2 * (int(i) - 1) - 1), end="")
print("*")
i -= 1
(7)图案7
*
***
* * *
* * *
* * *
***********
* * *
* * *
* * *
***
*
num1 = int(input("请输入打印图像的层数(奇数层):"))
while num1 % 2 == 0:
num1 = int(input("请输入打奇数层:"))
for i in range(1, num1 // 2 + 2):
for j in range(1, num1 // 2 + 2 - i):
print(" ",end="")
for j in range(1, 2 * i):
if j == 2 * i -1 or j == 1 or j == i or i == num1 // 2 + 1:
print("*", end="")
else:
print(" ",end="")
print()
for i in range(num1 // 2, 0, -1):
for j in range(num1 // 2 - i + 1, 0, -1):
print(" ",end="")
for j in range(2 * i -1, 0, -1):
if j == 2 * i -1 or j == 1 or j == i:
print("*", end="")
else:
print(" ",end="")
print()
2.用户输入两个数a、b。如果a能被b整除或a加b大于1000,则输出a;否则输出b。
a = int(input())
b = int(input())
if a % b == 0 or a + b > 1000:
print(a)
else:
print(b)
3.请输入一个数,判断这个数是偶数还是奇数,如果使用偶数,请判断从1到该数是3的倍数有哪些,如果是奇数,请判断从1到该数是5的倍数有哪些
a = int(input())
i = 1
if a & 1 != 0:
while i <= a:
if i % 3 == 0:
print(i)
i += 1
i = 1
if a & 1 == 0:
while i <= a:
if i % 5 == 0:
print(i)
i += 1
4.某商店T恤的价格为35元/件(2件9折,3件以上8折),裤子的价格为120 元/条(2条以上9折).小明在该店买了3件T恤和2条裤子,请计算并显示小明应该付多少钱?
a = 35
b = 120
c = int(input("请输入要购买的T恤件数:"))
d = int(input("请输入要购买的裤子件数:"))
if c == 2:
sum1 = c * a * 0.9
elif c >= 3:
sum1 = c * a * 0.8
else:
sum1 = a
if d >= 2:
sum2 = d * b * 0.9
else:
sum2 = b
print("小明应该付%s元"%(sum1 + sum2))
5.鸡兔同笼,从上面看有35个头,从下面看有94只脚,请问鸡有几只,兔有几只?
a = int(input("请输入头的数量:"))
b = int(input("请输入脚的数量:"))
c = (a * 4 - b) / 2
d = a - c
print("鸡有%d只,兔有%d只" %(c, d))
6.猜拳游戏:石头、剪刀、布的游戏
import random
# 1、2、3分别表示“石头、剪刀、布“
flag = True
while flag:
a = random.randint(1,3)
b = int(input("请输入:"))
while b > 3 or b < 1:
b = int(input("请重新输入:"))
if a == 1:
if b == 1:
print("平局")
elif b == 2:
print("你输了!!!")
else:
print("你太厉害了!!!")
elif a == 2:
if b == 1:
print("你太厉害了!!!")
elif b == 2:
print("平局")
else:
print("你输了!!!")
else:
if b == 1:
print("你输了!!!")
elif b == 2:
print("你太厉害了!!!")
else:
print("平局")
print("继续游戏Y/y,退出游戏N/n")
num = input("是否继续游戏(Y/N):")
if num == 'N' or num == 'n':
flag = False
elif num == 'Y' or num == 'y':
continue
else:
num = input("""输入有误!!
请重新输入:""")
7.判断以下哪些不能作为标识符
A、a
B、¥a
C、_12
D、$a@12
E、false
F、False
答案:B、D
8.求50~150之间的质数是那些?
for i in range(50, 151):
flag = True
for j in range(2, i // 2 + 1):
if i % j == 0:
flag = False
break
if flag:
print(f"{i}是质数")
9.打印输出标准水仙花数,输出这些水仙花数
for i in range(100, 1000):
a = i // 100
b = i % 100 // 10
c = i % 10
if i == a ** 3 + b ** 3 + c ** 3:
print(i,"是水仙花数")
10.验证:任意一个大于9的整数减去它的各位数字之和所得的差,一定能被9整除.
num = int(input("请输入一个大于9的整数:"))
num1 = num
sum = 0
while num <= 9:
num = int(input("请重新输入一个大于9的整数:"))
num1 = num
while num > 0:
sum += num % 10
num //= 10
if (num1 - sum) % 9 == 0:
print("验证成功!!!")
11.一个五位数,若在它的后面写上一个7,得到一个六位数A,
若在它前面写上一个7,得到一个六位数B,B是A的五倍,求此
五位数.
for i in range(10000, 100000):
A = 10 * i + 7
B = 100000 * 7 + i
if B == 5*A:
print(f"这个5位数是{i}")
12.小明今年18岁了,正常来说,应该在蛋糕上,插入18跟蜡烛,但是小明不是一般人,他是程序员
他考虑到18的进制是10010,所以他在蛋糕上插入了五个蜡烛,点燃了其中两跟,问:
如果用户输入年龄,请你安排插入的蜡烛数和点燃的蜡烛数
输入:n n>=1 n <=200
输入x, y x表示蜡烛总数量,y表示点燃的蜡烛数量
案例1
输入 18
输出 5, 2
案例2:
输入 8
输出 4 1
year = int(input("输入:"))
sum1 = 0
sum2 = 0
while year > 200 or year < 1:
year = int(input("请输入正确年龄:"))
while year > 0:
if year % 2 == 0:
sum1 += 1
else:
sum2 += 1
year //= 2
print(f"输出:{sum1 + sum2},{sum2}")