iven an integer representing a 10-digit phone number, output the area code, prefix, and line number using the format (800) 555-1212.
In Python:
Given an integer representing a 10-digit phone number, output the area code, prefix, and line number using the format (800) 555-1212.
Ex: If the input is:
8005551212
the output is:
(800) 555-1212
Hint: Use % to get the desired rightmost digits. Ex: The rightmost 2 digits of 572 is gotten by 572 % 100, which is 72.
Hint: Use // to shift right by the desired amount. Ex: Shifting 572 right by 2 digits is done by 572 // 100, which yields 5. (Recall integer division discards the fraction).
For simplicity, assume any part starts with a non-zero digit. So 0119998888 is not allowed.
Trending now
This is a popular solution!
Step by step
Solved in 3 steps with 2 images
This is my code:
# Input phone number
phone_number = int(input())
# TODO: Save the rightmost 4 digits of phone_number to line_number
line_number = phone_number % 10000
# TODO: Shift phone_number right by 4 digits and save the result in phone_number
phone_number = phone_number / 10000
# TODO: Save the rightmost 3 digits of phone_number to prefix_number
prefix_number = phone_number % 1000
# TODO: Shift phone_number right by 3 digits and save the result in phone_number
phone_number = phone_number / 1000
# TODO: Save the remaining 3 digits of phone_number to area_code_num
area_code_num = phone_number
print("("+str((area_code_num))+") "+str(prefix_number)+"-"+str(line_number)
This is my out:
(800.5551212) 555.1212000000523-1212
What changes do I need to make in code to get my output to read:
(800) 555-1212the