1
|
BlockStmt([CommentStmt('Finds the square root of a number using the Babylonian algorithm'), InputStmt(IdentifierNode('a'), None), AssignStmt(IdentifierNode('x'), NumberNode(1)), AssignStmt(IdentifierNode('y'), IdentifierNode('a')), AssignStmt(IdentifierNode('prec'), NumberNode(1e-08)), WhileStmt(BinOpNode(CallNode(IdentifierNode('abs'), [BinOpNode(IdentifierNode('y'), IdentifierNode('x'), '-')]), IdentifierNode('prec'), '>'), [AssignStmt(IdentifierNode('x'), BinOpNode(BinOpNode(IdentifierNode('x'), IdentifierNode('y'), '+'), NumberNode(2), '/')), AssignStmt(IdentifierNode('y'), BinOpNode(IdentifierNode('a'), IdentifierNode('x'), '/'))]), DisplayStmt(CallNode(IdentifierNode('round'), [CallNode(IdentifierNode('min'), [ListNode([IdentifierNode('x'), IdentifierNode('y')])]), IdentifierNode('prec')]), False), DisplayStmt(StringNode(' ≤ √a ≤ '), False), DisplayStmt(CallNode(IdentifierNode('round'), [CallNode(IdentifierNode('max'), [ListNode([IdentifierNode('x'), IdentifierNode('y')])]), IdentifierNode('prec')]), True)])
|