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]
4 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]4 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
Excel spread sheets are primarily used to
Juli2301 [7.4K]

Answer:

work with numbers and text.

Explanation:

Spreadsheets can help organize information, such as alphabetizing a list of names or ordering records, and calculate and analyze information using mathematical formulas.

4 0
3 years ago
Read 2 more answers
Which of the following is NOT areserved word in Java?intpublicstaticnum
Rama09 [41]

Answer:

num

Explanation:

In java reserved words are also known as keywords, keywords are reserve words for a language that can't be used as an identifier(name of a class, name of a variable, name of an array etc.) int, public static, are reserve words.

In given question num is not a reserved word.

6 0
3 years ago
Pix blocks półfinały skilled
jasenka [17]

mam  ,,4 6 7 12 15 .18.20.

6 0
3 years ago
When a communication exchange that does not verify the identity of the endpoints of a communication and accepts any properly for
ELEN [110]

Answer:

True

Explanation:

When communication exchange that does not verify the identity of endpoints of communication is true

3 0
4 years ago
Select the correct answer.
Anit [1.1K]

Answer: Steady OR Flashing

Explanation: If you are talking about the internet connection / power received lines One light should be Solid or "Steady" and the other usually green light will be flashing indicating that data is being transferred. Beware that just because the Orange light is Steady that does not mean that the internet is working that just means that it sees its connected.

4 0
3 years ago
Read 2 more answers
Other questions:
  • Match each vocabulary word to its definition.
    8·1 answer
  • i got a set of headphones and when i plug them into my speakers the right side only works how do i fix the left side of them
    12·1 answer
  • Write a class for a Cat that is a subclass of Pet. In addition to a name and owner, a cat will have a breed and will say "meow"
    14·1 answer
  • One of your clients has opened a branch office in another state. Both the main office and the new branch office have fast, relia
    10·1 answer
  • Design and implement an application that plays the Hi-Lo guessing game with numbers. The program should pick a random number bet
    13·1 answer
  • Complete the sentence about entering and editing data in a cell in a spreadsheet.
    13·1 answer
  • Write if true or false
    12·1 answer
  • Write a function that dynamically allocates an array of integers. The function should accept an integer argument indicating the
    8·1 answer
  • HELLLLLLLLPPPPPPPPPPPP HHHHHHHHHEEEEEEEEELLLLLLPPPPPP MEEEEEEEE
    12·2 answers
  • Procedural programs specify instructions that a processor must execute to perform computations. These programs sometimes consist
    11·1 answer
Add answer
Login
Not registered? Fast signup
Signup
Login Signup
Ask question!