def generate_hale_seq(num):
lnum = [num]
while num != 1:
if (num%2) == 0:
num = num//2
lnum.append(num)
else:
num = (num * 3) + 1
lnum.append(num)
return lnum
print(generate_hale_seq(10))
Write a program for Hailstone Sequence in Python
Carvia Tech  May 04, 2019  1 min read  21 views  Python Coding Problem
Hailstone Sequence
A hailstone sequence is a calculation of numbers that increase and decrease but eventually settles into a repeating pattern of the numbers 4, 2, 1. The sequence is generated by starting with any positive whole number greater than zero and completing the following steps:

If the number is even, divide it by 2 to calculate a new number

If the number is odd, multiple it by 3 and add 1 to calculate a new number

Repeat the above process for calculated numbers until the sequence 4, 2, 1 is generated.
[10, 5, 16, 8, 4, 2, 1]
Top articles in this category:
 Top 100 interview questions on Data Science & Machine Learning
 Google Data Scientist interview questions with answers
 Write a program to check if the given word is Isogram & Pair isogram in python
 Write a program to find if a number is Lychrel Number in Python
 Write a python program to find Largest Substring that occurs more than once
 Introduction to Python 3.6 & Jupyter Notebook
 Creating custom Keras callbacks in python
Find more on this topic:
Machine Learning
Data science, machine learning, python, R, big data, spark, the Jupyter notebook, and much more
Last updated 1 month ago
Recommended books for interview preparation:
Facebook Page
Similar Posts
 Closest Points
 Sum of the Diagonals
 How to design a customer satisfaction survey
 When using Gaussian mixture model, how do you know it is applicable
 Why use feature selection in machine learning
 What is the difference between Kmean and EM? How to decide k
 Explain a probability distribution that is not normal and how to apply that
 Google Data Scientist interview questions with answers
 Count the number of open lockers in school
 Introduction to Sorting Algorithms
Enter your email address to subscribe to this blog and receive notifications of new posts by email.