Tuesday, 17 September 2013

Separating Digits from a Phone Number

Separating Digits from a Phone Number

I have a problem from my AP Java class that I'm not able to figure out.
Here it is:
Pull Phone Number Apart Write a program that: Prompts the user for their
phone number (no dashes), displays the phone number, the area code, the
middle three digits, and the last four digits.
Remember, the greatest allowable value for an integer number is
2,147,483,647, so you cannot do a 262 number
And here's my code:
import java.util.Scanner; public class PhoneNumber {
public static void main(String[] args)
{
Scanner input = new Scanner( System.in );
System.out.println("Enter your phone number");
int number = input.nextInt();
int digit1 = number / 10000000000;
digit1 = digit1 % 1000000000;
int digit2 = number / 10000000000;
digit2 = digit2 % 1000000000;
int digit3 = number / 10000000000;
digit3 = digit3 % 1000000000;
int digit4 = number / 1000000000;
digit4 = digit4 % 1000000000;
int digit5 = number / 10000000000;
digit5 = digit5 % 1000000000;
int digit6 = number / 1000000000;
digit6 = digit6 % 100000000;
int digit7 = number / 100000000;
digit7 = digit7 % 10000000;
int digit8 = number / 100000000;
digit8 = digit8 % 10000000;
int digit9 = number / 10000000;
digit9 = digit9 % 1000000;
int digit10 = number / 1000000;
digit10 = digit10 % 100000;
System.out.println("Phone number = " + number);
System.out.println("Area code = " + digit1 + digit2 + digit3);
System.out.println("Middle digits = " + digit4 + digit5 + digit6);
System.out.println("Last four digits = " + digit7 + digit8 + digit9);
}
}
Here is the error I'm getting: The literal 10000000000 of type int is out
of range
Can anyone help me fix this? Thanks in advance! :)

No comments:

Post a Comment