Вариант 2
Подсчитать цикломатическую сложность
if( c1() )
f1();
if( c2() )
f3();
else
f4();V(G) = e - n + 2p = 8-7+2 = 3
Подсчитать сильную связность по данным, слабую связность и клейкость данных для s, x, t,an
uses crt;
var x,an,s,eps,t:real;
n:longint;
begin
clrscr;
write('x=');readln(x);
write('eps=');readln(eps);
s:=0;
t:=x;
n:=1;
an:=t/n
while abs(an)>=eps do
begin
s:=s+an;
n:=n+1;
t:=t*(-x);
an:=t/n;
end;
writeln('s=',s:0:6);
write('ln(1+x)=',ln(1+x):0:6);
readln
end.
| x | t | an | s | Code |
|---|---|---|---|---|
| 1 | 4 | 4 | 5 | var x,an,s,eps,t:real; |
| 1 | 1 | 1 | n:longint; | |
| begin | ||||
| clrscr; | ||||
| 1 | 1 | 1 | 1 | write('x=');readln(x); |
| 1 | 1 | 1 | write('eps=');readln(eps); | |
| 2 | s:=0; | |||
| 2 | 2 | 2 | t:=x; | |
| 2 | 2 | 2 | n:=1; | |
| 3 | 3 | 3 | an:=t/n | |
| 2 | 2 | 2 | while abs(an)>=eps do | |
| begin | ||||
| 3 | s:=s+an; | |||
| 3 | 3 | 3 | n:=n+1; | |
| 3 | 3 | 3 | t:=t*(-x); | |
| 3 | 3 | 3 | an:=t/n; | |
| end; | ||||
| writeln('s=',s:0:6); | ||||
| write('ln(1+x)=',ln(1+x):0:6); | ||||
| readln | ||||
| end |
Всего лексем: 31; Сильно связанных: 2; Слабо связанных: 23; (если считать вместе без сильно связанных)
| Метр | число |
|---|---|
| SDC | 2/31 |
| WDC | 23/31 |
| DA | [23*3+2*4]/[31*4] |
Посчитать WMC, DIT, NOC, СВО, RFC, LCOM
| A | B | C | D | E | F | H | J | |
|---|---|---|---|---|---|---|---|---|
| WDC | 3 | 1 | 2 | 2 | 1 | 2 | 2 | 1 |
| DIT | 1 | 1 | 1 | 2 | 2 | |||
| NOC | 3 | 0 | 1 | 1 | 0 | 0 | 0 | 0 |
| CBO | 1 | 0 | 1 | 3 | 0 | 2 | 2 | 0 |
| RFC | 4 | 1 | 2 | 3 | 1 | 2 | 2 | 1 |
| LCOM | 1 | 0 | 0 | 1 | 0 | 1 | 0 | 0 |