Halstead complexity measures

Halstead complexity measures are software metrics introduced by Maurice Howard Halstead in 1977[1] as part of his treatise on establishing an empirical science of software development.

Halstead made the observation that metrics of the software should reflect the implementation or expression of algorithms in different languages, but be independent of their execution on a specific platform.

Halstead's goal was to identify measurable properties of software, and the relations between them.

The effort measure translates into actual coding time using the following relation, Halstead's delivered bugs (B) is an estimate for the number of errors in the implementation.

) are: main, (), {}, int, scanf, &, =, +, /, printf, ,, ; The distinct operands (