提交时间:2026-03-06 15:16:08

运行 ID: 85154

def decimal_to_octal(decimal_num): """ 将十进制数转换为八进制数 Args: decimal_num (int): 输入的非负十进制整数 Returns: str: 对应的八进制数字符串 """ # 处理特殊情况:0 if decimal_num == 0: return "0" # 处理负数情况(虽然题目要求非负,但仍做容错处理) if decimal_num < 0: raise ValueError("请输入非负整数") octal_digits = [] # 使用除8取余法进行转换 while decimal_num > 0: remainder = decimal_num % 8 octal_digits.append(str(remainder)) decimal_num = decimal_num // 8 # 反转余数序列得到正确的八进制表示 octal_digits.reverse() # 合并为字符串返回 return ''.join(octal_digits) def main(): """ 主函数:读取输入并输出转换结果 """ try: # 读取用户输入 decimal_input = int(input()) # 验证输入是否为非负整数 if decimal_input < 0: print("请输入非负整数") return # 转换并输出结果 octal_result = decimal_to_octal(decimal_input) print(octal_result) except ValueError: print("请输入有效的整数") except Exception as e: print(f"发生错误: {e}") # 程序入口 if __name__ == "__main__": main()