Guest User

Untitled

a guest
Jun 19th, 2018
88
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 1.41 KB | None | 0 0
  1. /**
  2. * This simple tool allows you to convert numbers from base 2 to base 10
  3. * (decimal numeral system) or from base 10 to base 2 (binary).
  4. *
  5. * @author Ciprian Borundel
  6. *
  7. */
  8.  
  9. import java.util.Scanner;
  10.  
  11.  
  12. public class NumberBases {
  13.  
  14. public static StringBuilder sb = new StringBuilder();
  15. public static Scanner scan = new Scanner(System.in);
  16.  
  17. public static String convertNumberToBase2(int n) {
  18. while (n > 0) {
  19. sb.append(n % 2);
  20. n /= 2;
  21. }
  22. sb.reverse();
  23. String convertedNumber = sb.toString();
  24. return convertedNumber;
  25. }
  26.  
  27. public static int convertNumberToBase10(String number) {
  28. int pow = 0, sum = 0;
  29. for (int i = number.length() - 1; i >= 0; i--) {
  30. if (Character.isDigit(number.charAt(i)) &&
  31. Character.getNumericValue(number.charAt(i)) < 2) {
  32. sum += Character.getNumericValue(number.charAt(i)) * (Math.pow(2, pow));
  33. pow++;
  34. } else {
  35. return 0;
  36. }
  37. }
  38. return sum;
  39. }
  40.  
  41. public static void main(String[] args) {
  42. System.out.println("1. Convert number from base 2 to base 10");
  43. System.out.println("2. Convert number from base 10 to base 2");
  44. int n = scan.nextInt();
  45. if (n == 1) {
  46. System.out.println("Enter number in base 2:");
  47. System.out.println(convertNumberToBase10(scan.next()));
  48. } else if (n == 2) {
  49. System.out.println("Enter number in base 10:");
  50. System.out.println(convertNumberToBase2(scan.nextInt()));
  51. } else {
  52. System.out.println("Invalid option!");
  53. }
  54.  
  55. }
  56. }
Add Comment
Please, Sign In to add comment