Academic Integrity: tutoring, explanations, and feedback — we don’t complete graded work or submit on a student’s behalf.

Implement function generateSequence(startNumber, factor, offset, stopNumber) tha

ID: 3787493 • Letter: I

Question

Implement function generateSequence(startNumber, factor, offset, stopNumber) that generates a sequence of numbers as follows. The sequence starts with startNumber. Let currNumber represent the current number in the sequence. Then, until the currNumber is equal to stopNumber, the following rule is used to update currNumber:

-if currNumber is even, the next number is currNumber / 2.

-if currNumber is odd, then next number is ((currNumber * factor) + offset)

Assume all inputs are positive integers and that startNumber is greater than or equal to stopNumber. generateSequence should 1) print each number of the sequence on a separate line, and 2) print information about the length of the sequence (i.e. the number of numbers generated in the sequence). Your function should use a single while loop.

>>> generateSequence(5, 3, 3, 3)

5

18

9

30

15

48

24

12

6

3

Length of sequence: 10

>>> generateSequence(5, 3, 1, 1)

5

16

8

4

2

1

Length of sequence: 6

Explanation / Answer

the following function in Python gives you the required functionality:

# your code goes here
def generateSequence(startNumber, factor, offset, stopNumber):
   len = 1
   currNumber = startNumber
   print(currNumber)
   while (currNumber!=stopNumber):
       len = len + 1
       if(currNumber%2 == 0):
           currNumber = currNumber//2
       else:
           currNumber = (currNumber*factor)+offset
       print(currNumber)
   print("Length of Sequence: "+str(len))

generateSequence(5,3,3,3)

Input:

generateSequence(5,3,3,3)

Output

5
18
9
30
15
48
24
12
6
3
Length of Sequence: 10

Input:

generateSequence(5,3,1,1)

Output:

5
16
8
4
2
1
Length of Sequence: 6

Code URL:

http://ideone.com/U0QGP6

Hope it helps, do give your response

Hire Me For All Your Tutoring Needs
Integrity-first tutoring: clear explanations, guidance, and feedback.
Drop an Email at
drjack9650@gmail.com
Chat Now And Get Quote