Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- /**
- *
- * my third homework
- *
- */
- import java.util.*;
- import java.lang.*;
- import java.io.*;
- public class Main {
- public static void main(String[]args) {
- // задаём массив
- int[] MyArr = new int[15];
- // генерация массива
- for(int i = 0; i< MyArr.length; i++) {
- MyArr[i] = (int) Math.round((Math.random() * 30) - 15);
- System.out.println(MyArr[i]);
- }
- int s = 0; // начало области
- int f = MyArr.length - 1; //конец области
- int indexMin, indexMax; // тут будут хранится индексы минимального и максимального значения в области
- int min = 16, max = -16;
- while (s<= f && f>= s) {
- // поиск наим и наиб значений в области и запись их индексов
- for(int i = 0; i< MyArr.length; i++) {
- if(MyArr[i] < min) {
- min = MyArr[i];
- indexMin = i;
- }
- if(MyArr[i] > max) {
- max = MyArr[i];
- indexMax = i;
- }
- }
- // перестановка занчений в начало и конец области
- MyArr[indexMin] = MyArr[s];
- MyArr[s] = min;
- MyArr[indexMax] = MyArr[f];
- MyArr[f] = max;
- // сброс значений минимума и максимума для поиска в новой области
- min = 16;
- max = -16;
- // сужение области
- s++;
- f--;
- }
- for(int i = 0; i< MyArr.length; i++) {
- System.out.println("после сортировки:");
- System.out.println(MyArr[i]);
- }
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement