1.9 折纸比高、
假设一张足够大的纸,纸张的厚度为 0.5 毫米。请问对折多少次以后,可以达到珠穆朗玛峰的高度(最新数据:8844.43 米)。请编写程序输出对折 次数。
注意:使用循环结构语句实现,直接输出结果不计分。
sum_height = 0.5 t = 0 # 折纸次数 while sum_height < 8844.43: sum_height *= 2 t += 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 *= i if i == 2: sum_num += t if i == 4: sum_num += t if 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 + date8 date_dict = {} start = 0 s = 1 for index, i in enumerate(date_time): date_dict[i] = 0 if start == index: date_dict[i] = 1 s += 1 start = start + s print(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 += 1 elif i.islower(): small += 1 print(f'大写实例 {big}') print(f'小写实例 {small}')