Advertisement
TsetsoP

Tema 08

Dec 4th, 2020
148
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Java 2.60 KB | None | 0 0
  1. import java.util.Arrays;
  2. import java.util.Scanner;
  3.  
  4. class Scratch {
  5.  
  6.     public static void separate(int[] arr) {
  7.         int evensN = 0;
  8.         int oddsN = 0;
  9.  
  10.         for (int i = 0; i < arr.length; i++) {
  11.             if (arr[i] % 2 == 0) {
  12.                 evensN++;
  13.             } else {
  14.                 oddsN++;
  15.             }
  16.         }
  17.  
  18.         int evens[] = new int[evensN];
  19.         int odds[] = new int[oddsN];
  20.  
  21.         int k = 0;
  22.         int j = 0;
  23.  
  24.         for (int i = 0; i < arr.length ; i++) {
  25.             if (arr[i] % 2 == 0) {
  26.                 evens[k++] = arr[i];
  27.             }else{
  28.                 odds[j++] = arr[i];
  29.             }
  30.         }
  31.         System.out.println("Sorted evens:");
  32.         System.out.println(Arrays.toString(evens));
  33.  
  34.         System.out.println("Sorted odds:");
  35.         System.out.println(Arrays.toString(odds));
  36.     }
  37.  
  38.  
  39.         public static void evens ( int[] evensNumber){
  40.             int BUFF, j;
  41.             boolean swap;
  42.  
  43.             do {
  44.                 swap = false;
  45.                 for (k = 0; k < evensN.length - 1; k++) {
  46.                     if (evensN[k] > evensN[k + 1]) {
  47.                         swap = true;
  48.                         BUFF = evensN[k];
  49.                         evensN[k] = evensN[k + 1];
  50.                         evensN[k + 1] = BUFF;
  51.                     }
  52.                 }
  53.             } while (swap);
  54.         }
  55.    
  56.  public static void odds ( int[] oddsNumber){
  57.             int FirstUnsortedElement;
  58.             int LastSortedElement;
  59.  
  60.             for (int i = 1; i < oddsNumber.length; i++) {
  61.                 FirstUnsortedElement = oddsNumber[i];
  62.                 LastSortedElement = i - 1;
  63.  
  64.                 while (LastSortedElement >= 0 && oddsNumber[LastSortedElement] < FirstUnsortedElement) {
  65.                     oddsN[LastSortedElement + 1] = oddsN[LastSortedElement];
  66.                     LastSortedElement = LastSortedElement - 1;
  67.                 }
  68.                 oddsN[LastSortedElement + 1] = FirstUnsortedElement;
  69.             }
  70.         }
  71.  
  72.         public static void main(String[] args) {
  73.         Scanner scan = new Scanner(System.in);
  74.  
  75.         System.out.println("Input number of elements: ");
  76.         int n = scan.nextInt();
  77.         int [] arr = new int[n];
  78.  
  79.         for (int i = 0; i < n; i++) {
  80.             System.out.printf("Input [%d] element: ", i);
  81.             arr[i] = scan.nextInt();
  82.         }
  83.  
  84.         System.out.println("Before sorting:");
  85.         System.out.println(Arrays.toString(arr));
  86.  
  87.         separate(arr);
  88.         evens(arr);
  89.         odds(arr);
  90.  
  91.         scan.close();
  92.     }
  93. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement