MULTIPLY B BY B GIVING B-SQUARED.
MULTIPLY 4 BY A GIVING FOUR-A.
MULTIPLY FOUR-A BY C GIVING FOUR-A-C.
SUBTRACT FOUR-A-C FROM B-SQUARED GIVING RESULT-1.
COMPUTE RESULT-2 = RESULT-1 **.5.
SUBTRACT B FROM RESULT-2 GIVING NUMERATOR.
MULTIPLY 2 BY A GIVING DENOMINATOR.
DIVIDE NUMERATOR BY DENOMINATOR GIVING X.
?
COBOL gives the illusion of clarity to people who can't program, because it contains some familiar words. But by time someone's accumulated experience of programming has moved into double figures (counted in minutes, not years) it becomes clear that this 'clarity' is nothing but obfuscation. Quite simply, few people can see at a glance what that code does, despite the illusion that it's self-documenting and made from clearly understandable elements.
What's clear about
.5.
MULTIPLY B BY B GIVING B-SQUARED.
MULTIPLY 4 BY A GIVING FOUR-A.
MULTIPLY FOUR-A BY C GIVING FOUR-A-C.
SUBTRACT FOUR-A-C FROM B-SQUARED GIVING RESULT-1.
COMPUTE RESULT-2 = RESULT-1 **
SUBTRACT B FROM RESULT-2 GIVING NUMERATOR.
MULTIPLY 2 BY A GIVING DENOMINATOR.
DIVIDE NUMERATOR BY DENOMINATOR GIVING X.
?
COBOL gives the illusion of clarity to people who can't program, because it contains some familiar words. But by time someone's accumulated experience of programming has moved into double figures (counted in minutes, not years) it becomes clear that this 'clarity' is nothing but obfuscation. Quite simply, few people can see at a glance what that code does, despite the illusion that it's self-documenting and made from clearly understandable elements.