1.判断奇偶数
请用程序实现: 输入一个整数,判断它是奇数还是偶数。如果是奇数,输出odd;如果是偶数,输出even。
num=int(input("请输入一个数"))
# 请判断这个数是奇数还是偶数
if (num%2==0):
print("even")
else:
print("odd")
2.公倍数
请用程序实现输入一个正整数,判断它是否是5和7的公倍数。如果是,输出yes;如果不是,输出no。
# 请使用 input() 输入一个正整数 num
num =int(input("请输入一个正整数"))
# 请判断这个正整数是否是 5 和 7 的公倍数
if num%7==0 and num%5 == 0:
print("yes")
else:
print("no")
3.判断平闰年
如果一个年份可以被 4 整除且不能被 100 整除,或者可以被 400 整除,那么这个年份就是闰年。
# 请使用 input() 输入一个年份 year
year=int(input("请输入一个年份"))
# 请判断这个年份是否为闰年
if year%4==0 and year%100!=0 or year%400==0:
print("leap year")
else :
print("common year")
4.天天向上的力量第一问
请用程序实现
计算千分之一的力量。
要求如下:
(1) 计算一年 365 天,每天进步千分之一,累计进步到多少,并将计算结果输出。
(2) 计算一年 365 天,每天退步千分之一,累计剩下多少,并将计算结果输出。
(3) 输出时,在一行内输出进步的结果和退步的结果。
dayfactor = 0.001
up = pow(1+dayfactor,365)
down =pow(1-dayfactor,365)
print("向上:{:.2f}","向下:{:.2f}")
5.天天向上的力量第二问
请用程序实现
计算千分之五和百分之一的力量。
要求如下:
(1) 计算一年 365 天,每天进步千分之五或百分之一,累计进步到多少,并将计算结果输出。
(2) 计算一年 365 天,每天退步千分之五或百分之一,累计剩下多少,并将计算结果输出。
(3) 输出时,在一行内输出进步的结果和退步的结果。
dayfactor = 0.001
up = pow(1+dayfactor,365)
down =pow(1-dayfactor,365)
print("向上:{:.2f}","向下:{:.2f}")
dayfactor = 0.005
up1 = pow(1+dayfactor,365)
down1 =pow(1-dayfactor,365)
print("向上:{:.2f}","向下:{:.2f}")
6.天天向上的力量第三问
请用程序实现工作日的力量。
要求如下:
(1) 一年 365 天,一周 5 个工作日,每天进步 1%;
(2) 一年 365 天,一周 2 个休息日,每天退步 1%;
(3) 计算按照工作日和休息日的进步或退步情况,经过一年 365 天后,累计剩下多少,并将计算结果输出。
(4) 输出时,在一行内输出计算的结果。
dayup=1.0
dayfactor=0.01
for i in range(365):
if i%7 in[6,0]:
dayup = dayup*(1-dayfactor)
else:
dayup = dayup*(1+dayfactor)
print("工作日的力量:{:.2f}".format(dayup))
7.天天向上的力量第四问
工作日模式要努力到什么水平,才能与每天努力进步 1% 一样?
A君: 一年 365 天,每天进步 1%,不停歇,365天之后,达到37.78
B君: 一年 365 天,每周工作 5 天休息 2 天,休息日每天退步 1%,那么工作日应该多努力才能追上A君呢?
# 根据df参数计算工作日力量的函数
# 参数不同,这段代码可共用
# def保留字用于定义函数
def dayUP(df):
dayup = 1 # 这是第一天
for i in range(365):
if i % 7 in [6,0]:
dayup = dayup * (1 - 0.01)
else:
dayup = dayup * (1 + df)
return dayup # 这是最后一天
dayfactor = 0.01
# while保留字判断条件是否成立
# 条件成立时循环执行
while dayUP(dayfactor) < 37.78:
dayfactor += 0.001
print("工作日的努力参数是:{:.3f} ".format(dayfactor))
8.拼接最大字符
请用程序实现输入两个长度相等的字符串,将两字符串中相同索引中较大的字符组成一个新的字符串并输出,使用 ASCII 码来比较字符大小。
# 请使用 input() 输入两个字符串 string1, string2
string1=input()
string2=input()
# 请分别比较两个字符串中的每一个字符,将大的字符拼接成一个新的字符串,并输出
str1=list(string1)
str2=list(string2)
for i in range(len(string1)):
if str1[i]>=str2[i]:
print(str1[i],end="")
if str1[i]<str2[i]:
print(str2[i],end="")
9.删除字符
请用程序实现删除字符串string中的一部分。
要求如下:
(1) 分两行输入两个整数,第一个整数表示字符串 string 的索引 begin,第二个整数表示需要删除的长度 length。
(2) 将字符串 string 中,从索引 begin 开始,长为 length 的子字符串删除。
(3) 输出字符串 string 删除后剩下的部分。
string = 'abcdefghijklmnopqrstuvwxyz'
# 请使用 input() 输入索引 begin 和长度 length
begin=int(input())
length=int(input())
# 请将字符串 string 中,从索引 begin 开始,长为 length 的字符串删除,并将剩下的字符串内容输出
str1=list(string)
del str1[begin:begin+length]
for i in range(len(str1)):
print(str1[i],end="")
10.插入字符
请用程序实现已知字符串 s ,请将另一个字符串 sub 添加到字符串 s 的指定索引位置中,并将添加后的 s 输出。
s = 'abcdefghijklmnopqrstuvwxyz'
sub=input()
pos=int(input())
str1=list(s)
str1.insert(pos,sub)
for i in range(len(str1)):
print(str1[i],end="")
11.回文字符串
如果一个字符串从左往右读与从右往左读是相同的字符串,那么这个字符串就是回文字符串。如 “level”、"noon"都是回文字符串。
输入一个字符串,判断它是否为回文字符串。如果是回文字符串,输出yes;如果不是回文字符串,输出no。
s=input()
a=len(s)
i=0
count=1
while i<=(a/2):
if s[i]==s[a-i-1]:
count =1
i+=1
else:
count =0
break
if count==1:
print('yes')
else:
print('no')
12.统计词量
请用程序实现输入一段仅由英文字母、空格组成的文本,统计这段文本中的单词数量,并将统计结果输出。
i = input()
if len(i)==i.count(' '):
print(0)
else:
list=i.split()
i1 = ' '.join(list)
print(i1.count(' ')+1)
13.你中无我
请用程序实现给定两个字符串 s1, s2,删除字符串 s1 中的属于 s2 的字符,并输出结果。
s1=str(input())
s2=str(input())
for i in s1:
if i not in s2:
print(i,end='')
14.时间格式化
获取当前时间,并将获取到的时间按照年-月-日 时:分:秒的格式打印输出。
import time
time.time()
t = time.gmtime()
time.strftime("%Y-%m-%d %H:%M:%S",t)
15.文本进度条
要求如下:(1) 采用 sleep() 模拟一个持续的进度,获得文本进度条的变化时间;(2) 通过 print() 函数实现单行动态刷新,在 print() 函数中更换参数 end 的默认值为’’,每次使用 print() 函数输出时不能换行;(3) 要能回退:打印后光标到之前的位置\r。
import time
scale=50
print("执行开始".center(scale//2,"-"))
start=time.perf_counter()
for i in range(scale+1):
a='*'*i
b='.'*(scale-i)
c=(i/scale)*100
dur=time.perf_counter()-start
print("\r{:^3.0f}%[{}->{}]{:.2f}s".format(c,a,b,dur),end='')
this.sleep(0.1)
print("\n"+"执行结束".center(scale//2,"-"))