Run ID 作者 问题 语言 测评结果 时间 内存 代码长度 提交时间
85156 sh25_wangtaojie 八进制转十进制数 Python3 通过 30 MS 3724 KB 1439 2026-03-06 15:16:47

Tests(1/1):


def octal_to_decimal(octal_str): """ 将八进制字符串转换为十进制数 Args: octal_str (str): 八进制数字符串 Returns: int: 对应的十进制数 Raises: ValueError: 当输入包含非八进制字符时抛出异常 """ # 验证输入是否只包含有效的八进制字符(0-7) for char in octal_str: if char not in '01234567': raise ValueError("输入包含非八进制字符") decimal_value = 0 power = 0 # 从右到左处理每一位八进制数字 for i in range(len(octal_str) - 1, -1, -1): digit = int(octal_str[i]) decimal_value += digit * (8 ** power) power += 1 return decimal_value def main(): """ 主函数:读取输入并输出转换结果 """ try: # 读取用户输入的八进制数 octal_input = input().strip() # 验证输入不为空 if not octal_input: print("输入不能为空") return # 转换八进制到十进制 decimal_result = octal_to_decimal(octal_input) print(decimal_result) except ValueError as e: print(f"输入错误: {e}") except Exception as e: print(f"发生未知错误: {e}") if __name__ == "__main__": main()


测评信息: