蓝桥杯 小计算器(C++)

本文介绍了如何通过编程解决一个涉及进制转换、运算和指令识别的问题,详细解释了代码中关键部分的逻辑,包括字符和数字的转换、不同进制间的转换函数以及处理不同指令的操作。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

一、题目描述

二、解题思路

        感觉没啥好讲的 照着要求一点一点做就行了 还是直接贴代码吧

        这里主要说明一下代码的部分实现

       1. 考虑到最大到35进制 会出现字母 所以对每次计算的中间结果 ans 用字符串类型string表示

       2. 数可能很大 涉及到计算的操作 全用long long类型定义

       3. 关于指令 order 的输入和识别  因为order可能有空格 所以用getline()函数 当然还有另外一种思路,就是把NUM X分解为两条指令 依次读取,然后再根据运算符opt是否已经被赋值来进行对 ans 的更新  然后是识别  因为最多只要知道指令的前两个字母 就可以知道是什么指令了 然后在进行相应的操作

       4. 指令NUM X 作为一个字符串 要获取X 用 .substr(int i)方法即可 这里i = 4,这个方法可以有不止一个参数 

       5. 进制转换 CHANGE X 注意X可能是个两位数 分开判断一下

       6. 进制转换函数  十进制转到其他高进制  如果是0  考虑可能 result 会是 ""

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值