QBASIC计算器程序用IF条件语句实现象限ATAN角度计算求助
QBASIC 四象限反正切角度计算实现方案
首先注意QBASIC内置的ATN函数返回值为弧度,要得到角度结果需要先乘以180/π做单位转换。以下是仅使用IF、ELSE、THEN三个关键字实现的代码:
' 定义圆周率常量 CONST PI = 3.14159265358979 ' 读取输入的坐标值 INPUT "输入x的值:", x INPUT "输入y的值:", y ' 先计算基础反正切角度值 base_atn = ATN(y / x) * 180 / PI ' 分支判断逻辑,仅使用IF/ELSE/THEN关键字 IF y > 0 THEN IF x > 0 THEN n = base_atn ELSE n = base_atn + 180 END IF ELSE IF x < 0 THEN n = base_atn + 180 ELSE n = base_atn + 360 END IF END IF ' 输出计算结果 PRINT "计算结果n ="; n
实现说明
- 采用嵌套分支结构完全避开了
AND等额外关键字的使用,所有判断逻辑仅通过IF、ELSE、THEN实现,完全符合使用限制要求 - 分支逻辑完全匹配给定的四个条件:
- y>0且x>0时,n = 基础反正切值
- y>0且x<0时,n = 基础反正切值+180
- y<0且x<0时,n = 基础反正切值+180
- y<0且x>0时,n = 基础反正切值+360
- 如果需要处理x=0或y=0的边界场景,可在现有分支外层额外补充
IF判断即可。
内容的提问来源于stack exchange,提问作者Learner4491
相关产品推荐
相关产品推荐

