Convert Newton’s method for approximating square roots in Project 1 to a recursive function named newton. (Hint: The estimate of the square root should be passed as a second argument to the function.)

Computer Networking: A Top-Down Approach (7th Edition)
7th Edition
ISBN:9780133594140
Author:James Kurose, Keith Ross
Publisher:James Kurose, Keith Ross
Chapter1: Computer Networks And The Internet
Section: Chapter Questions
Problem R1RQ: What is the difference between a host and an end system? List several different types of end...
icon
Related questions
Question

Convert Newton’s method for approximating square roots in Project 1 to a recursive function named newton. (Hint: The estimate of the square root should be passed as a second argument to the function.)

# Initialize the tolerance
TOLERANCE = 0.000001
def newton(x):
""Returns the square root of x.""
# Perform the successive approximations
estimate = 1.0
while True:
estimate = (estimate + x / estimate) / 2
difference = abs(x - estimate ** 2)
if difference <= TOLERANCE:
break
return estimate
def main():
"Allows the user to obtain square roots."""
while True:
# Receive the input number from the user
x = input("Enter a positive number or enter/return to quit: ")
%3D
if x
== ":
break
x = float (x)
# Output the result
print("The program's estimate is", newton (x))
print("Python's estimate is
", math.sqrt(x))
if --name_-- :
"__main__":
main()
Transcribed Image Text:# Initialize the tolerance TOLERANCE = 0.000001 def newton(x): ""Returns the square root of x."" # Perform the successive approximations estimate = 1.0 while True: estimate = (estimate + x / estimate) / 2 difference = abs(x - estimate ** 2) if difference <= TOLERANCE: break return estimate def main(): "Allows the user to obtain square roots.""" while True: # Receive the input number from the user x = input("Enter a positive number or enter/return to quit: ") %3D if x == ": break x = float (x) # Output the result print("The program's estimate is", newton (x)) print("Python's estimate is ", math.sqrt(x)) if --name_-- : "__main__": main()
# Modify the code below
II II I|
File: newton.py
Project 6.1
Compute the square root of a number (uses function with loop).
1. The input is a number, or enter/return to halt the
input process.
2. The outputs are the program's estimate of the square root
using Newton's method of successive approximations, and
Python's own estimate using math.sqrt.
II II II
import math
# Initialize the tolerance
TOLERANCE = 0.000001
def newton(x):
""Returns the square root of x."""
# Perform the successive approximations
estimate = 1.0
while True:
estimate = (estimate + x / estimate) / 2
difference = abs(x - estimate ** 2)
if difference <= TOLERANCE:
break
return estimate
def main():
II I"Allows the user to obtain square roots."II"
while True:
# Receive the input number from the user
Transcribed Image Text:# Modify the code below II II I| File: newton.py Project 6.1 Compute the square root of a number (uses function with loop). 1. The input is a number, or enter/return to halt the input process. 2. The outputs are the program's estimate of the square root using Newton's method of successive approximations, and Python's own estimate using math.sqrt. II II II import math # Initialize the tolerance TOLERANCE = 0.000001 def newton(x): ""Returns the square root of x.""" # Perform the successive approximations estimate = 1.0 while True: estimate = (estimate + x / estimate) / 2 difference = abs(x - estimate ** 2) if difference <= TOLERANCE: break return estimate def main(): II I"Allows the user to obtain square roots."II" while True: # Receive the input number from the user
Expert Solution
trending now

Trending now

This is a popular solution!

steps

Step by step

Solved in 2 steps

Blurred answer
Similar questions
  • SEE MORE QUESTIONS
Recommended textbooks for you
Computer Networking: A Top-Down Approach (7th Edi…
Computer Networking: A Top-Down Approach (7th Edi…
Computer Engineering
ISBN:
9780133594140
Author:
James Kurose, Keith Ross
Publisher:
PEARSON
Computer Organization and Design MIPS Edition, Fi…
Computer Organization and Design MIPS Edition, Fi…
Computer Engineering
ISBN:
9780124077263
Author:
David A. Patterson, John L. Hennessy
Publisher:
Elsevier Science
Network+ Guide to Networks (MindTap Course List)
Network+ Guide to Networks (MindTap Course List)
Computer Engineering
ISBN:
9781337569330
Author:
Jill West, Tamara Dean, Jean Andrews
Publisher:
Cengage Learning
Concepts of Database Management
Concepts of Database Management
Computer Engineering
ISBN:
9781337093422
Author:
Joy L. Starks, Philip J. Pratt, Mary Z. Last
Publisher:
Cengage Learning
Prelude to Programming
Prelude to Programming
Computer Engineering
ISBN:
9780133750423
Author:
VENIT, Stewart
Publisher:
Pearson Education
Sc Business Data Communications and Networking, T…
Sc Business Data Communications and Networking, T…
Computer Engineering
ISBN:
9781119368830
Author:
FITZGERALD
Publisher:
WILEY