Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- import java.util.Scanner;
- public class Main {
- public static void main(String[] args) {
- Scanner scan = new Scanner(System.in);
- int n = 0;
- boolean isIncorrect;
- System.out.println("Данная программа предназначена для изменения данной последовательности так, чтобы в начале стояли все нулевые элементы, затем отрицательные, а затем положительные элементы последовательности.");
- do {
- isIncorrect = false;
- System.out.println("Введите количество элементов в последовательности: ");
- try {
- n = Integer.parseInt(scan.nextLine());
- } catch (Exception err) {
- System.out.println("Ошибка! Введите число.");
- isIncorrect = true;
- }
- if (!isIncorrect && n < 1) {
- System.out.println("Ошибка! Введите верное количество элементов.");
- isIncorrect = true;
- }
- } while (isIncorrect);
- int[] arr = new int[n];
- int[] zeros = new int[n];
- int[] negatives = new int[n];
- int[] positives = new int[n];
- int zeroIndex = 0;
- int negativeIndex = 0;
- int positiveIndex = 0;
- System.out.println("Введите элементы последовательности.");
- for (int i = 0; i < n; i++) {
- do {
- isIncorrect = false;
- System.out.print("Элемент " + (i + 1) + ": ");
- try {
- arr[i] = Integer.parseInt(scan.nextLine());
- } catch (Exception err) {
- System.out.println("Ошибка. Введите целое число.");
- isIncorrect = true;
- }
- } while (isIncorrect);
- }
- for (int i = 0; i < n; i++) {
- if (arr[i] == 0) {
- zeros[zeroIndex] = arr[i];
- zeroIndex++;
- } else if (arr[i] < 0) {
- negatives[negativeIndex] = arr[i];
- negativeIndex++;
- } else {
- positives[positiveIndex] = arr[i];
- positiveIndex++;
- }
- }
- for (int i = 0; i < zeroIndex; i++) {
- arr[i] = zeros[i];
- }
- for (int i = 0; i < negativeIndex; i++) {
- arr[i + zeroIndex] = negatives[i];
- }
- for (int i = 0; i < positiveIndex; i++) {
- arr[i + zeroIndex + negativeIndex] = positives[i];
- }
- System.out.print("Отсортированная последовательность: ");
- for (int i = 0; i < n; i++) {
- System.out.print(arr[i] + " ");
- }
- scan.close();
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement