Created
June 24, 2019 01:18
-
-
Save kardoso/cd599f4c88ecad974c31a039425a0431 to your computer and use it in GitHub Desktop.
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
#!usr/bin/python3 | |
def main(): | |
'''Return the square root of an positive integer that has no integer square root''' | |
# Return middle value between two numvers | |
def get_middle(lower, greater): | |
return ((greater-lower)/2) + lower | |
value = int(input()) | |
# Lower interval value | |
lower = 0 | |
# Greater interval value | |
greater = value | |
# Result precision | |
precision = 0.0001 | |
# Middle value of the current interval | |
middle = get_middle(lower, greater) | |
# Loop while interval is greater than precision | |
while (greater-lower) > precision: | |
if (middle*middle) > value: | |
greater = middle | |
else: | |
lower = middle | |
# Set new middle | |
middle = get_middle(lower, greater) | |
# Print result | |
print(str(value) + ": " + ('%.3f' % middle)) | |
main() |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment