0% found this document useful (0 votes)
38 views11 pages

Menu Driven

Uploaded by

Aniket Dubey
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as DOCX, PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
38 views11 pages

Menu Driven

Uploaded by

Aniket Dubey
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as DOCX, PDF, TXT or read online on Scribd

def show_menu():

print("\n===== Menu =====")


print("1. Prime numbers from 1 to 20")
print("2. Perfect numbers from 1 to 1000")
print("3. Factors of a number")
print("4. Factorials from 1 to 20")
print("5. Armstrong numbers from 1 to 500")
print("6. Palindrome numbers from 1 to 200")
print("7. Pattern display")
print("8. Exit")
print("================")

def is_prime(num):
if num < 2:
return False
for i in range(2, int(num ** 0.5) + 1):
if num % i == 0:
return False
return True

def prime_numbers():
print("Prime numbers from 1 to 20:")
for num in range(1, 21):
if is_prime(num):
print(num, end=" ")
print()

def is_perfect(num):
sum_divisors = sum(i for i in range(1, num) if num % i == 0)
return sum_divisors == num

def perfect_numbers():
print("Perfect numbers from 1 to 1000:")
for num in range(1, 1001):
if is_perfect(num):
print(num, end=" ")
print()

def factors(num):
return [i for i in range(1, num + 1) if num % i == 0]

def factorial(num):
if num == 0:
return 1
else:
result = 1
for i in range(1, num + 1):
result *= i
return result
def armstrong_numbers():
print("Armstrong numbers from 1 to 500:")
for num in range(1, 501):
sum_digits = sum(int(digit) ** 3 for digit in str(num))
if num == sum_digits:
print(num, end=" ")
print()

def is_palindrome(num):
return str(num) == str(num)[::-1]

def palindrome_numbers():
print("Palindrome numbers from 1 to 200:")
for num in range(1, 201):
if is_palindrome(num):
print(num, end=" ")
print()

def pattern_display():
n=5
for i in range(n):
for j in range(i + 1):
print("*", end=" ")
print()
def main():
while True:
show_menu()
choice = input("Enter your choice (1-8): ")

if choice == '8':
print("Exiting the program.")
break

if choice == '1':
prime_numbers()
elif choice == '2':
perfect_numbers()
elif choice == '3':
try:
num = int(input("Enter a number to find its factors:
"))
print(f"Factors of {num}: {factors(num)}")
except ValueError:
print("Invalid input! Please enter an integer.")
elif choice == '4':
print("Factorials from 1 to 20:")
for num in range(1, 21):
print(f"{num}! = {factorial(num)}")
elif choice == '5':
armstrong_numbers()
elif choice == '6':
palindrome_numbers()
elif choice == '7':
pattern_display()
else:
print("Invalid choice! Please select a valid option.")

print("\n")

if __name__ == "__main__":
main()
OUTPUT

You might also like