1answer.
Ask question
Login Signup
Ask question
All categories
  • English
  • Mathematics
  • Social Studies
  • Business
  • History
  • Health
  • Geography
  • Biology
  • Physics
  • Chemistry
  • Computers and Technology
  • Arts
  • World Languages
  • Spanish
  • French
  • German
  • Advanced Placement (AP)
  • SAT
  • Medicine
  • Law
  • Engineering
Ray Of Light [21]
4 years ago
8

Q3: Summation Write a recursive implementation of summation, which takes a positive integer n and a function term. It applies te

rm to every number from 1 to n including n and returns the sum of the results. # Question 3 def summation(n, term) : ""Return the sum of the first n terms in the sequence defined by term. Implement using recursion! >>> summation(5, lambda x: x * x * x) # 1^3 + 2^3 + 3^3 + 4^3 + 5^3 225 >>> summation(9, lambda x: x + 1) # 2 + 3 + 4 + 5 + 6 + 7 + 8 + 9 + 10 54 >>> summation(5, lambda x: 2**x) # 241 + 2^2 + 2^3 + 2^4 + 245 62 >>> # Do not use while for loops!

Engineering
1 answer:
harina [27]4 years ago
6 0

Answer:

Here is the recursive function summation:

def summation(n, term):      

   if n == 1:  

       return term(n)

   else:

       return term(n) + summation(n - 1, term)

Explanation:

The function summation() has two arguments where n is a positive integer and term is a function term. term has the lambda function which is a small function having an argument and an expression e.g lambda b: b+20

So the summation() function is a recursive function which returns sum of the first n terms in the sequence defined by term ( a lambda function).

If you want to check if this function works, you can call this function by passing values to it like given in the question.

summation(5, lambda x: 2**x)

Here the value of n is 5 and the term is a lambda function x: 2**x

If you want to see the results of this function on output screen then use:

print(summation(5, lambda x: 2**x))

The print() function will print the results on screen.

This returns the sum of first 5 terms in sequence defined in the function x: 2**x

In recursive methods there are two cases: base case and recursive case. Base case is the stopping case which means that the recursion will stop when the base case/ base condition evaluates to true. The recursive case is when the function keeps calling itself so the recursive function keepsexecuting until the base case becomes true.

Here the base case is if n == 1:  So the recursive function calling itself until the value of n becomes 1.  

Recursive case is:

       return term(n) + summation(n - 1, term)

For the above example with n= 5 and term = x:2**x the recursions starts from n and adds all the terms of the series one by one and the value of n keeps decrementing by 1 at every recursive call.

When the value of n is equal to 1 the base case gets true and the recursion ends and the result of the sum is displayed in output.

This is how the summation() function works for the above function call:

2^1 + 2^2 + 2^3 + 2^4 + 2^5

n is 5 So this term function is called recursively 5 times and at every recursive call its value decreases by 1. Here the term function is used to compute 2 raise to power n. So in first recursive call the 2 raise to the power 5 is computed, then 5 is decremented and then in second recursive call to summation(), 2 raise to the power 4 is calculated, in third recursive call  to summation(), 2 raise to the power 3 is calculated, in fourth recursive call  to summation(), 2 raise to the power 2 is calculated, in fifth recursive call  to summation(), 2 raise to the power 1 is calculated, then the base condition is reached as n==1. So the recursion stops and the sum of the above computed power function results is returned which is 62.

2^1 + 2^2 + 2^3 + 2^4 + 2^5 = 62

The screen shot of recursive function along with the output of explained examples is attached.

You might be interested in
Air-conditioning principles are being discussed. Technician A states that heat always
Sunny_sXe [5.5K]

Answer: C.

Explanation:

7 0
3 years ago
A recent online start-up just invested millions of dollars into new technology for their firm. Which of the following goals were
DIA [1.3K]

Answer:

i think D

Explanation:

7 0
1 year ago
2 times 4 - 3 times 5​
Papessa [141]

Answer:

<h3>The answer is - 7</h3>

Explanation:

The statement above is written as

2 × 4 - 3 × 5

8 - 15

= - 7

Hope this helps you

4 0
4 years ago
Read 2 more answers
Type the correct answer in the box. Spell all words correctly.
babunello [35]

Answer:

recombinant human growth

Explanation:

5 0
3 years ago
Define Ancestor, Descendant, Siblings, Height, Depth, Root and Leaf for the
mr_godi [17]

Answer:

Ancestor are our great grandparents

4 0
3 years ago
Other questions:
  • How is the foundation for a skyscraper different from a house?
    5·1 answer
  • 5. Switch a in the circuit has been open for a long time and switch b has been closed for a long time. Switch a is closed at t =
    13·1 answer
  • Parity Detect of Three Inputs 20 pts. (EVEN) a) Draw a function table showing the three data lines and the output function F. 4
    9·1 answer
  • Calculate the convective heat-transfer coefficient for water flowing in a round pipe with an inner diameter of 3.0 cm. The water
    8·1 answer
  • An open-open organ pipe is 73.5 cm long. An open-closed pipe has a fundamental frequency equal to the third harmonic of the open
    11·2 answers
  • A spherical interplanetary probe of 0.5-m diameter contains electronics that dissipate 150 W. If the probe surface has an emissi
    11·1 answer
  • two cars travel on a straight road from the point. A to point B both cars accelerate to their maximum speed and then continue at
    10·1 answer
  • Pin supports, such as that at A, may have horizontal and vertical components to the support reaction. Roller supports, such as t
    14·1 answer
  • Question #4
    15·1 answer
  • A car has a steering wheel with a 15 inch diameter that takes 18 lbs of Effort force to move is
    9·1 answer
Add answer
Login
Not registered? Fast signup
Signup
Login Signup
Ask question!