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
vitfil [10]
3 years ago
7

#The Fibonacci sequence is a number sequence where each #number is the sum of the previous two numbers. The first #two numbers a

re defined as 0 and 1, so the third number is #1 (0 + 1 = 1), the fourth number is 2 (1 + 1 = 2), the #fifth number is 3 (1 + 2 = 3), the sixth number is 5 #(2 + 3 = 5), and so on.
#
#Below we've started a class called FibSeq. At any time, #FibSeq holds two values from the Fibonacci sequence: #back1 and back2.
#
#Create a new method inside FibSeq called next_number. The #next_number method should:
#
# - Calculate and return the next number in the sequence, # based on the previous 2. # - Update back2 with the former value of back1, and update # back1 with the new next item in the sequence.
#
#This means that consecutive calls to next_number should #yield each consecutive number from the Fibonacci sequence. #Calling next_number 5 times would print 1, 2, 3, 5, and 8.
class FibSeq:
def __init__(self):
self.back1 = 1
self.back2 = 0
def next_number(self):
self.back1=self.back1+self.back2 # updated the back1 value to the next number in the series first
self.back2=self.back1-self.back2 #updated the back2 value with previous back1 value
yield (self.back1) # yielded the next number in the series since it is updated as back1 so yielded back1
f = FibSeq()
for i in range(5): # here i have iterated the series only 5 times u can change it as you like
s=f.next_number()
print(next(s))# here next is an iterator function for the yield generator.
#The code below will test your method. It's not used for
#grading, so feel free to change it. As written, it should
#print 1, 2, 3, 5, and 8.
newFib = FibSeq()
print(newFib.next_number())
print(newFib.next_number())
print(newFib.next_number())
print(newFib.next_number())
print(newFib.next_number())

Computers and Technology
1 answer:
saw5 [17]3 years ago
3 0

Answer:

Here is the next_number method:

def next_number(self): #method to return next number in the sequence

    temporary = self.back1 + self.back2 # adds previous number to next number and stores the result in a temporary variable

    self.back2 = self.back1 #Updates back2 with the former value of back1,

    self.back1 = temporary #update back1 with the new next item in the sequence.

    return temporary #

Explanation:

I will explain the working of the above method.

back1 = 1

back2 = 0

At first call to next_number()  method:

temporary = back1 + back2

                 = 1 + 0

temporary = 1

self.back2 = self.back1

self.back2 = 1

self.back1 = temporary

self.back1 = 1

return temporary

This return statement returns the value stored in temporary variable i.e. 1

Output: 1

back1 = 1

back2 = 1

At second call to next_number()  method:

temporary = back1 + back2

                 = 1 + 1

temporary = 2

self.back2 = self.back1

self.back2 = 1

self.back1 = temporary

self.back1 = 2

return temporary

This return statement returns the value stored in temporary variable i.e. 2

output: 2

back1 = 2

back2 = 1

At second call to next_number()  method:

temporary = back1 + back2

                 = 2 + 1

temporary = 3

self.back2 = self.back1

self.back2 = 2

self.back1 = temporary

self.back1 = 3

return temporary

This return statement returns the value stored in temporary variable i.e. 3

Output: 3

back1 = 3

back2 = 2

At second call to next_number()  method:

temporary = back1 + back2

                 = 3 + 2

temporary = 5

self.back2 = self.back1

self.back2 = 3

self.back1 = temporary

self.back1 = 5

return temporary

This return statement returns the value stored in temporary variable i.e. 5

Output: 5

back1 = 5

back2 = 3

At second call to next_number()  method:

temporary = back1 + back2

                 = 5 + 3

temporary = 8

self.back2 = self.back1

self.back2 = 5

self.back1 = temporary

self.back1 = 8

return temporary

This return statement returns the value stored in temporary variable i.e. 8

Output: 8

Calling next_number 5 times would print 1, 2, 3, 5, and 8.

The complete program along with its output is attached.

You might be interested in
A ___________ variable is used to add up a set of values. fill in the blank
TEA [102]

Answer:

dependent variable -- As it depends on the other variables, changes when they change

3 0
3 years ago
[ANSWER = BRAINLIEST] How to mark an answer as brainliest?
Hoochie [10]

Answer:

once your question is answered you get an option available on the bottom of the answer

<em>see attached</em>

and you click on<u> Mark as brainliest </u>

8 0
3 years ago
Read 2 more answers
Name and define (or list the set that defines) three of the four common data types in programming.
Dominik [7]

Answer: this is the  Answer your question

6 0
2 years ago
Which of the following tasks is least effective at preventing a computer virus A. Anti-virus's software up to date
MaRussiya [10]
C is your answer
hope that helps
4 0
2 years ago
Read 2 more answers
Secure email technique that provides confidentiality, along with authentication, integrity, and non-repudiation. It uses a centr
Llana [10]

Answer:

a

Explanation:

just put a

7 0
2 years ago
Other questions:
  • 2. Imagine you play a game of fetch with the dog. It takes the dog 60 seconds to run a total of 180 meters. What was the dog's a
    6·1 answer
  • An indicator is a comprehensive analysis of critical information
    8·1 answer
  • Stella is surfing the Internet to look for affordable apartments in New York City. Every time she clicks on a link to a webpage,
    9·1 answer
  • Where is the worlds biggest cookie​
    7·2 answers
  • Ten members of a wedding party are lining up in a row for a photograph.
    8·1 answer
  • The image below shows a weather service map
    13·1 answer
  • What is the name given a technological program that typically copies itself and moves through a computer system in order to disr
    10·1 answer
  • Software and technology that allow people to work together on a task are known as
    8·2 answers
  • Copy and paste is the only way to move text from one place to another.<br><br>True or <br>False​
    15·2 answers
  • What do you think that the next version of IR (IR 5.0) will bring if it was discovered in near future? (hint:- advance IR 4.0 fe
    8·1 answer
Add answer
Login
Not registered? Fast signup
Signup
Login Signup
Ask question!