Advertisement
Guest User

Untitled

a guest
Nov 14th, 2019
110
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 3.55 KB | None | 0 0
  1. package help;
  2. import java.util.Scanner;
  3. import java.util.Locale;
  4. public class fse2 {
  5.  
  6. public static void main(String[] args) {
  7. System.out.println("Введите число:");
  8. Scanner in = new Scanner(System.in);
  9. float number;
  10. try{
  11. in.useLocale(new Locale("en"));
  12. number = in.nextFloat();
  13. }
  14. catch (Exception e){
  15. in.useLocale(new Locale("ru"));
  16. number = in.nextFloat();
  17. }
  18.  
  19. if (number >= 0) {
  20. int left = (int) number;
  21. boolean flag = left >= 2;
  22. String bin = "";
  23. while (flag) {
  24. bin = left % 2 + bin;
  25. left /= 2;
  26. if (left < 2) {
  27. flag = false;
  28. }
  29. }
  30. bin = left % 2 + bin;
  31. float right = (float) number - (int) number;
  32. if(right>0){
  33. bin += ".";
  34. for (int i = 0; i < 20; i++) {
  35. right = right * 2 - (int) right * 2;
  36. bin = bin + (int) right;
  37. if (right == 1.0) {
  38. break;
  39. }
  40. }
  41. }
  42.  
  43. try {
  44. System.out.println(Long.parseLong(bin));
  45. System.out.println("Long");
  46. }catch(Exception e) {}
  47.  
  48.  
  49. try {
  50. System.out.println(Integer.parseInt(bin));
  51. System.out.println("Int");
  52. }catch(Exception e) {}
  53.  
  54. try {
  55. System.out.println(Float.parseFloat(bin));
  56. System.out.println("Float");
  57. }catch(Exception e) {}
  58.  
  59.  
  60.  
  61. try {
  62. System.out.println(Double.parseDouble(bin));
  63. System.out.println("Double");
  64. }catch(Exception e) {}
  65. }
  66.  
  67.  
  68.  
  69.  
  70. else {
  71. number = number * -1;
  72. int left = (int) number;
  73. boolean flag = left >= 2;
  74. String bin = "";
  75.  
  76. while (flag) {
  77. bin = left % 2 + bin;
  78. left /= 2;
  79. if (left < 2) {
  80. flag = false;
  81. }
  82. }
  83. bin = left % 2 + bin;
  84. float right = (float) number - (int) number;
  85. if(right>0){
  86. bin += ".";
  87. for (int i = 0; i < 20; i++) {
  88. right = right * 2 - (int) right * 2;
  89. bin = bin + (int) right;
  90. if (right == 1.0) {
  91. break;
  92. }
  93. }
  94. }
  95. try {
  96. System.out.println(Long.parseLong("-" + bin));
  97. System.out.println("Long");
  98. }catch(Exception e) {}
  99.  
  100.  
  101. try {
  102. System.out.println(Integer.parseInt("-" + bin));
  103. System.out.println("Int");
  104. }catch(Exception e) {}
  105.  
  106. try {
  107. System.out.println(Float.parseFloat("-" + bin));
  108. System.out.println("Float");
  109. }catch(Exception e) {}
  110.  
  111.  
  112.  
  113. try {
  114. System.out.println(Double.parseDouble("-" + bin));
  115. System.out.println("Double");
  116. }catch(Exception e) {}
  117. }
  118.  
  119. }
  120. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement