在三角形计算中,要求输入三角型的三个边长:A、B 和C。当三边不可能构成三角形时提示错误,可构成三角形时计算三角形周长。若是等腰三角形打印“等腰三角形”,若是等边三角形,则提示“等边三角形”。画出程序流程图、控制流程图、计算圈复杂度V(g),找出基本测试路径。
时间: 2023-08-31 11:23:32 浏览: 222
### 回答1:
程序流程图如下:
![image](https://user-images.githubusercontent.com/74920566/132157105-5f5b7d51-0018-4377-acb3-33d3f9aeb05e.png)
控制流程图如下:
![image](https://user-images.githubusercontent.com/74920566/132157119-4a4f4c4d-0252-4e75-86fa-05fe790c0ae4.png)
圈复杂度V(g) = 4
基本测试路径:
1. A+B>C,A+C>B,B+C>A(三边能构成三角形) -> 2 -> 3 -> 4
2. A=B=C (等边三角形) -> 5
3. A=B or B=C or A=C (等腰三角形) -> 5
4. 其他(普通三角形) -> 5
5. 结束
### 回答2:
三角形的计算流程如下:
1. 输入三角形的三个边长A、B、C。
2. 判断输入的边长是否合法。如果某两边之和小于第三边,则无法构成三角形,提示错误并结束程序。
3. 判断是否为等边三角形。如果三个边长都相等,则为等边三角形,输出“等边三角形”。
4. 判断是否为等腰三角形。如果有两边长度相等,则为等腰三角形,输出“等腰三角形”。
5. 计算三角形的周长P。将三个边长相加得到周长P。
6. 输出三角形的周长P。
程序流程图如下:
输入:A、B、C
│
│
▼
判断三边是否能构成三角形──┐
│
不可以 │ 是
│ │
输出错误提示 │
│ │
结束程序 │
│ │
▼ ▼
判断是否为等边三角形 判断是否为等腰三角形
│ │
不是 是
│ │
输出等腰三角形提示 │
└──► 输出等边三角形提示
│
▼
计算三角形的周长 P
│
▼
输出周长 P
控制流程图如下:
```plaintext
开始
输入A, B, C
判断(A+B)>C and (A+C)>B and (B+C)>A?
↓
否 ←─┘ 是
↓
输出错误提示
↓
结束
↓
等边三角形? 是
↓
输出等边三角形提示
↓
结束
↓
等腰三角形? 是
↓
输出等腰三角形提示
↓
结束
↓
计算周长P = A+B+C
↓
输出周长P
↓
结束
```
计算圈复杂度V(g)为:
V(g) = E - N + 2P
其中,E为流程图中的边数,N为流程图中的节点数,P为流程图中的连接数。
E = 11, N = 10, P = 9
代入公式计算得,V(g) = 11 - 10 + 2 * 9 = 20
基本测试路径为:
1. (A+B)>C and (A+C)>B and (B+C)>A 为 False,输出错误提示。
2. (A+B)>C and (A+C)>B and (B+C)>A 为 True,且A、B、C都相等,输出等边三角形提示。
3. (A+B)>C and (A+C)>B and (B+C)>A 为 True,且存在两个边相等,输出等腰三角形提示。
4. (A+B)>C and (A+C)>B and (B+C)>A 为 True,非等边三角形,非等腰三角形,计算周长P并输出。
### 回答3:
程序流程图:
开始 -> 输入三角形的边长A、B、C -> 检查是否构成三角形 -> 是:计算三角形周长并判断是否为等腰三角形或等边三角形 -> 输出对应结果 -> 结束
-> 否:提示错误 -> 结束
控制流程图:
开始
/ \
/ \
| |
输入边长 ——————> 是否构成三角形 ————> 输出错误提示 —> 结束
| —————————————————————————>
| ^ |
| | 是 |
| -------------- |
↓
计算周长 —————> 是否为等腰三角形 ————> 输出等腰三角形提示 —> 结束
| ——> 否 ——————————————>
| |
| 是 |
↓
是否为等边三角形 ————> 输出等边三角形提示 —> 结束
——> 否 ——————————————>
计算圈复杂度V(g) = 7
基本测试路径:
1. 输入的三个边长无法构成三角形
2. 输入的三个边长构成三角形且非等腰非等边三角形
3. 输入的三个边长构成等边三角形
阅读全文