测评会员优惠活动进行中 · 开通 VIP,有效期内测评不限次 VIP 优惠中 · 测评不限次 立即查看

A26003. 岩浆活动2024年,我国科学家通过对嫦娥六号月壤样品的分析研究,发现月球背面某区域的岩浆活动层数呈现递减规律:最上层有n层岩浆活动,下一层岩浆活动层数是上一层的三分之一(向下取整),直到层数小于等于1时停止。此外,每层岩浆活动有一个厚度值,最上层厚度为t,下一层厚度为上一层的0.5倍。请完善以下程序,计算该区域的总岩浆活动层数和总厚度。def moon(n, t): """ 计算月球某区域的总岩…

填空题 较难

题目描述

岩浆活动

2024年,我国科学家通过对嫦娥六号月壤样品的分析研究,发现月球背面某区域的岩浆活动层数呈现递减规律:最上层有n层岩浆活动,下一层岩浆活动层数是上一层的三分之一(向下取整),直到层数小于等于1时停止。

此外,每层岩浆活动有一个厚度值,最上层厚度为t,下一层厚度为上一层的0.5倍。

请完善以下程序,计算该区域的总岩浆活动层数和总厚度。

def moon(n, t):
   """
   计算月球某区域的总岩浆活动层数和总厚度
    n: 最上层的岩浆活动层数
    t: 最上层的岩浆活动厚度
    return: (总层数, 总厚度)
   """
   if        ①        :
       return 1, t
   else:
       sub_layers, sub_thickness = moon(n // 3,       ②        )
       return       ③        , t + sub_thickness
# 测试代码
n = int(input("请输入最上层的岩浆活动层数:"))
t = float(input("请输入最上层的岩浆活动厚度:"))
total_layers, total_thickness =       ④        
print(f"该区域的总岩浆活动层数为:{total_layers}")
print(f"该区域的总岩浆活动厚度为:{total_thickness}")

参考答案

def moon(n, t): """ 计算月球某区域的总岩浆活动层数和总厚度 n: 最上层的岩浆活动层数 t: 最上层的岩浆活动厚度 return: (总层数, 总厚度) """ if n <= 1: return 1, t else: sub_layers, sub_thickness = moon(n // 3, t * 0.5) return n + sub_layers, t + sub_thickness # 测试代码 n = int(input("请输入最上层的岩浆活动层数:")) t = float(input("请输入最上层的岩浆活动厚度:")) total_layers, total_thickness = moon(n, t) print(f"该区域的总岩浆活动层数为:{total_layers}") print(f"该区域的总岩浆活动厚度为:{total_thickness}")

答案解析

评分标准:

(1)n <= 1(或等效答案);(2分)

(2)t * 0.5 (或等效答案);(3分)

(3)n + sub_layers (或等效答案);(3分)

(4)moon(n, t)(或等效答案)。(2分)

上一题 下一题