Advertisement
Guest User

Untitled

a guest
Aug 28th, 2016
64
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 2.12 KB | None | 0 0
  1. import java.util.*;
  2. public class Chapter2 {
  3.  
  4.  
  5. // Γεμιζω τον πινακα με τα ψηφια του αριθμου
  6. public void fillTheArray(int number,int a[]){
  7.  
  8. for(int i=0;i<4;i++){
  9. a[i] = number % 10;
  10. number /= 10;
  11. }
  12. }
  13.  
  14.  
  15. // περνω τον αριθμο απο τα ψηφια του που ειναι στον πινακα
  16. public int gainNumber(int a[]){
  17.  
  18. int number=0;
  19. for(int k:a){
  20.  
  21. number = number * 10 + k;
  22.  
  23. }
  24.  
  25. System.out.println(number);
  26.  
  27. return number;
  28. }
  29.  
  30.  
  31.  
  32. // οτι και απο πανω αλλα αντιστροφα
  33. public int gainRevertNumber(int[] a){
  34. int number=0;
  35.  
  36. for(int i=3;i>=0;i--){
  37. number = number * 10 + a[i];
  38. }
  39. System.out.println(number);
  40. return number;
  41. }
  42.  
  43.  
  44.  
  45.  
  46. public static void main(String[] args){
  47.  
  48. // scanner για input
  49. Scanner scanner = new Scanner(System.in);
  50.  
  51.  
  52. // instance για να χρησημοποιησω τις μεθοδους της κλασεις
  53. Chapter2 obj = new Chapter2();
  54.  
  55.  
  56. // πινακας στον οποιο θα μπενουν τα ψηφια
  57. int[] numberDigits = new int[4];
  58.  
  59. // μεταβλητες οι οποιες θα γινετε η αφερεση
  60. int max,min;
  61.  
  62. // Διαβαζω απο την consola τον αριθμο
  63. int number = scanner.nextInt();
  64.  
  65. // Γεμιζω το array
  66. obj.fillTheArray(number, numberDigits);
  67.  
  68. // μεχρι να φτασω τον αριθμο
  69. while(number != 6174){
  70.  
  71. // ταξινομιση
  72. Arrays.sort(numberDigits);
  73.  
  74. // το μεγαλυτερο ειναι revert διοτι εχει ταξυνομηθει μικροτερο --> μεγαλυτερο
  75. max = obj.gainRevertNumber(numberDigits);
  76.  
  77. // το μικροτερο ειναι κανονικα τα ψηφια του πινακα
  78. min = obj.gainNumber(numberDigits);
  79.  
  80. // ο αριθμος ειναι max-min
  81. number = max - min;
  82.  
  83. //και ξανα βαζω στο array τα ψηφια του αριθμου
  84. obj.fillTheArray(number, numberDigits);
  85. }
  86.  
  87. }
  88.  
  89. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement