Python编程训练题2
创始人
2024-05-30 04:19:43
0

1.11
有 n 盏灯,编号 1~n(0 2 的倍数的开关(这些灯将被关掉),第 3 个人按下所有编号为 3 的倍数的开关(其中关掉的灯将被打开,开着的灯将被关闭),依次类推。输入灯数和人数,输出开着的灯的编号。
比如输入:10 2 输出最后亮灯的编号:1,3,5,7,9 注意:使用循环语句实现。

n, x = input('请依次输入灯数和人数:').split(' ')
n = int(n)
x = int(x)
led = []
# 使输入的所有灯打开
for i in range(n + 1):led.append(1)
for i in range(2, x + 1):for j in range(i, n + 1, i):led[j] = -led[j]
for i in range(1, n + 1):if led[i] == 1:print(i, end=',')

在这里插入图片描述

1.12
冒泡排序、
原始数组:[1,9,3,7,4,2,5,0,6,8]
排序后:[0,1,2,3,4,5,6,7,8,9];
要求:综合使用分支、循环结构语句实现,直接输出结果不计分。打印每一次运行的结果

initial = [1, 9, 3, 7, 4, 2, 5, 0, 6, 8]  # 初始值
temp = 0  # 中间值转化
for i in range(len(initial)):for j in range(len(initial) - i-1):if initial[j] > initial[j + 1]:temp = initial[j]initial[j] = initial[j + 1]initial[j + 1] = tempprint(f'第{i+1}轮变化结果:{initial}')

在这里插入图片描述

1.13
动物园饲养的食肉动物分大型动物和小型动物两类,规定老虎、狮子一类的大动物每次喂肉每头三斤,狐狸、山猫一类小动物每三头喂一斤。该动物园共有这两类动物 100 头,每
次需喂肉 100 斤,编程输出大、小动物的数量。

for big in range(1, 101):if 3 * big + 1 / 3 * (100 - big) == 100:print(f'大型动物{big},小型动物{100 - big}')

在这里插入图片描述

1.14
从键盘接收一个整数 n(n>=4),请打印一个由“*”号组成的长度和宽度均为 n 的空心矩形。例如输入:4 你要在屏幕打印如下图形:在这里插入图片描述

n = int(input('请输入一个整数n:'))
for i in range(n):for j in range(n):if i == 0 or j == 0 or i == n - 1 or j == n - 1:print('*', end='')else:print('', end=' ')print()

在这里插入图片描述

1.15
注意输出指定空心正方形。输入第一个数字为边长,第二个字符为组成图形边的字符。例如:输入
4 a (4为空心正方形的大小,a为显示的字符)
输出
aaaa
a a
a a
aaaa

n, char = input('请依次输入边长和字符:').split(' ')
n = int(n)
for i in range(n):for j in range(n):if i == 0 or j == 0 or i == n - 1 or j == n - 1:print(f'{char}', end='')else:print('', end=' ')print()

在这里插入图片描述

1.16
已知鸡和兔的总数量为 n,总腿数为 m。输入 n 和 m,依次输出鸡和兔的数目,如果无解, 则输出“No answer”(不要引号)

n, m = input('依次输入n,m:').split(' ')
n = int(n)
m = int(m)
rabbit = 0
f = True  # 判断答案是否存在
for rabbit in range(n + 1):if rabbit * 4 + (n - rabbit) * 2 == m:f = Falseprint(f'兔的数量:{rabbit},鸡的数量:{n - rabbit}')
if f:print('No answer')

在这里插入图片描述

1.17
中国古代的《算经》记载了这样一个问题:公鸡 5 文钱 1 只,母鸡 3 文钱 1 只,小鸡 1
文钱 3 只,如果用 100 文钱买 100 只鸡,那么公鸡、母鸡和小鸡各应该买多少只呢?现在请
你编程求出所有的解,每个解输出 3 个整数,打印在一行,用空格隔开,分别代表买的公鸡、母鸡、小鸡的数量。
注意:100 文钱要正好用完。请输出所有的解,每个解占一行。

cock, hen, chick = 0, 0, 0  # 公鸡,母鸡,小鸡
for cock in range(100):for hen in range(100):for chick in range(100):if cock + hen + chick == 100 and cock * 3 + hen * 1 + 1 / 3 * chick == 100:print(cock, hen, chick, sep=' ')

在这里插入图片描述

1.18
啤酒每罐 2.3 元,饮料每罐 1.9 元。小明买了若干啤酒和饮料,一共花了 82.3 元。我们还知道他买的啤酒比饮料的数量少,请你编程计算他买了几罐啤酒。

max_beer = int(82.3 / 2.3)
max_drink = int(82.3 / 1.9)
for beer in range(max_beer):for drink in range(max_drink):if beer * 2.3 + drink * 1.9 == 82.3 and beer < drink:print(beer)

在这里插入图片描述

1.9 折纸比高、
假设一张足够大的纸,纸张的厚度为 0.5 毫米。请问对折多少次以后,可以达到珠穆朗玛峰的高度(最新数据:8844.43 米)。请编写程序输出对折 次数。
注意:使用循环结构语句实现,直接输出结果不计分。

sum_height = 0.5
t = 0  # 折纸次数
while sum_height < 8844.43:sum_height *= 2t += 1
print(t-1)

1.20
职员小 A 今天犯了一个致命的错误,他一不小心丢失了 X 项目的市场调查结果只记得一个公式 xyz+yzz=532,其中 x、y、z 均为一位数,现在请你帮忙编写一个程序求出 x、y、z 分别代表什么数。

for x in range(10):for y in range(10):for z in range(10):if (x * 100 + y * 10 + z) + (y * 100 + z * 10 + z) == 532:print(x, y, z)

在这里插入图片描述

1.21
小明带两个妹妹参加元宵灯会。别人问她们多大了,她们调皮地说:“我们俩的年龄之积是年龄之和的 6 倍”。
小明又补充说:“她们可不是双胞胎,年龄差肯定也不超过 8 岁啊。” 请你编程求出小明的较小的

age_min = 0
age_max = 0
for age_min in range(1, 50):for age_max in range(1, 50):if age_min * age_max == (age_max + age_min) * 6 and 0 < age_max - age_min <= 8:print(age_min)

在这里插入图片描述

1.22
本月酒水的销售为 2!+4!+5!的值。n!表示 n 的阶乘,例如 3!=3×2×1=6,5!=5×4×3×2×1=120。求这个值

sum_num = 0
t = 1  # 计算每次循环的值
for i in range(1, 6):t *= iif i == 2:sum_num += tif i == 4:sum_num += tif i == 5:sum_num += t
print(sum_num)

在这里插入图片描述

1.23
分别输入两个字符串 s1 和 s2 ,请问 s1 中包含多少个 s2,如果没有则输出 0。要求:使用循环。

s1, s2 = input('按顺序输出字符串s1,s2:').split(' ')
t = 0  # 计数器
for i in range(len(s1) + 1):if s2 == s1[i:i + len(s2)]:t += 1
print(t)

在这里插入图片描述

1.24
小米打算把图标设计成下面这样,但是他不知道几层最合适,于是想写个程序,打印出不同层的图标,请你帮帮他。

———
—————
———————
注意:输入 n,打印 n 层高度的图标,如图是 4 层。

n = int(input('请输入n:'))
for i in range(n):for j in range(n - i):print(' ', end='')for j in range(1 + 2 * i):print('-', end='')print()

在这里插入图片描述

1.26
Lee 的老家住在工业区,日耗电量非常大。
今年 7 月,传来了不幸的消息,政府要在 7、8 月对该区进行拉闸限电。政府决定从 7
月 1 日起停电,然后隔一天到 7 月 3 日再停电,再隔两天到 7 月 6 日停电,依次下去,每次都比上一次长一天。
Lee 想知道自己到家后到底要经历多少天倒霉的停电。请编写程序帮他算一算。
注意:从键盘输入放假日期、开学日期,日期限定在 7、8 月份,且开学日期大于放假日期,然后在屏幕上输出停电天数。
提示:可以用数组标记停电的日期。

date7 = [f'7-{i}' for i in range(1, 32)]
date8 = [f'8-{i}' for i in range(1, 32)]
date_time = date7 + date8date_dict = {}
start = 0
s = 1
for index, i in enumerate(date_time):date_dict[i] = 0if start == index:date_dict[i] = 1s += 1start = start + sprint(date_dict)
date_list = list(date_dict.keys())start_date = input('请输入开始的时间')
stop_date = input('请输入截至的时间')start_index = date_list.index(start_date)
stop_index = date_list.index(stop_date)power_cut = []
for i in range(start_index, stop_index + 1):if date_dict[date_list[i]] == 1:power_cut.append(date_list[i])print(power_cut)
print(len(power_cut))

在这里插入图片描述

1.28
问题:使用给定的整数n,编写一个程序生成一个包含(i, i*i)的字典,该字典包含1到n之间的整数(两者都包含)。然后程序应该打印字典。
假设向程序提供以下输入:8
则输出为:
{1:1,2:4,3:9,4:16,5:25,6:36,,7:49,8:64}
提示:在为问题提供输入数据的情况下,应该假设它是控制台输入。考虑使用dict类型()\

n = int(input('请输入整数n:'))
dict_1 = {}
for i in range(1, n + 1):dict_1[i] = i ** 2
print(dict_1)

在这里插入图片描述

1.29
编写一个接受句子的程序,并计算大写字母和小写字母的数量。
假设为程序提供了以下输入:
Hello world!
然后,输出应该是:
大写实例 1
小写实例 9

char = input('请输入字符串:')
small = 0
big = 0
for i in char:if i.isupper():big += 1elif i.islower():small += 1
print(f'大写实例 {big}')
print(f'小写实例 {small}')

在这里插入图片描述

悲索之人烈焰加身,堕落者不可饶恕。永恒燃烧的羽翼,带我脱离凡间的沉沦。

相关内容

热门资讯

北京导游词 北京导游词(合集15篇)  作为一名优秀的旅游从业人员,时常要开展导游词准备工作,一篇完整的导游词,...
泰山景点介绍导游词 泰山景点介绍导游词(通用5篇)  作为一位不辞辛劳的导游,通常需要准备好一份导游词,导游词可以加深游...
校园导游词 校园导游词  作为一名专门引导游客、助人为乐的导游,就难以避免地要准备导游词,导游词一般是根据实际的...
韩国景点导游词 韩国景点导游词  大家好!  首先,欢迎大家到韩国首尔来旅游,下面就由我给大家介绍一下这个具有东方神...
介绍洛阳的导游词 介绍洛阳的导游词  洛阳位于河南,在那里有许多的特色文化,那么关于介绍洛阳的导游词都有哪些呢?下面是...
桂林聚龙潭导游词 桂林聚龙潭导游词  作为一位无私奉献的导游,时常需要用到导游词,导游词不是以一代百、千篇一律的,它必...
炳灵寺石窟导游词 炳灵寺石窟导游词  作为一名尽职尽责的导游,常常要根据讲解需要编写导游词,导游词是导游人员引导游客观...
西安大雁塔导游词 西安大雁塔导游词500字  游客朋友们:  大家好!  欢迎大家到西安大雁塔观光旅游!  大雁塔位于...
马鞍山森林公园讲解词 马鞍山森林公园讲解词  森林公园的导游词篇一:马鞍山森林公园导游词  大家好!欢迎来到马鞍山森林公园...
武汉导游词 武汉导游词范文(精选8篇)  作为一无名无私奉献的导游,时常需要用到导游词,导游词是导游员进行实地口...
大慈岩导游词 大慈岩导游词五篇  篇一:大慈岩导游词  大慈岩概况 在前面大家可以往右看一下。我们会看到在山腰上有...
五爷庙和杨五郎的关系导游词 五爷庙和杨五郎的关系导游词  一提起五台山,就知道它是五台山香火最旺,许愿最灵的寺庙。万佛阁是五爷庙...
优秀导游词 优秀导游词(精选35篇)  作为一名优秀的旅游从业人员,就有可能用到导游词,导游词是导游人员引导游客...
百里峡导游词 百里峡导游词精选  尊敬的各位朋友:  大家好!  欢迎来到祖冲之的故乡、山水休闲的胜地、美丽而热情...
屈原祠导游词 屈原祠导游词  作为一名专门为游客提供帮助的导游,编写导游词是必不可少的,导游词是导游员同游客交流思...
描写花果山导游词 描写花果山导游词  导语:花果山位于连云港市南云台山中麓。如下是精心为你挑选的关于花果山的导游词,欢...
拉法山导游词 拉法山导游词五篇  作为一名可信赖的导游人员,常常需要准备导游词,导游词作为一种解说的文体,它的作用...
朱家花园导游词 朱家花园导游词  朱家花园地处云南建水古城的建新街中段,是一组规模宏大的清代民居建筑,是清末乡绅朱渭...
经典全陪导游词 经典全陪导游词  导游词其主要特点是口语化些,此外还具有知识性、文学性、礼节性等,经典全陪导游词。和...
焦作博爱青天河导游词 焦作博爱青天河导游词  作为一名乐于助人的导游,常常要根据讲解需要编写导游词,导游词是讲解当地的基本...