Atem85

JavaJoy_1_10

Aug 21st, 2014
231
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Java 2.88 KB | None | 0 0
  1. package Lesson1.Массивы;
  2.  
  3. import java.util.Random;
  4. import java.util.Scanner;
  5.  
  6. /**
  7.  * Created by Артем on 20.08.2014.
  8.  */
  9. /*
  10.         Пользователь должен указать с клавиатуры чётное положительное число, а
  11.         программа должна создать массив указанного размера из случайных целых
  12.         чисел из [-5;5] и вывести его на экран в строку. После этого программа должна
  13.         определить и сообщить пользователю о том, сумма модулей какой половины
  14.         массива больше: левой или правой, либо сообщить, что эти суммы модулей
  15.         равны. Если пользователь введёт неподходящее число, то программа должна
  16.         требовать повторного ввода до тех пор, пока не будет указано корректное
  17.         значение.
  18.         Ввод с клавиатуры можно заменить передачей параметра в метод.*/
  19. public class L1_10 {
  20.     public static void main(String[] args) {
  21.         Scanner scn = new Scanner(System.in);
  22.         int numb = 0;
  23.         int sumLeftHalf = 0;
  24.         int sumRightHalf = 0;
  25.         Random random   = new Random();
  26.  
  27.         if (scn.hasNextInt()) {
  28.             do {
  29.                 numb = scn.nextInt();
  30.                 if (numb % 2 != 0 || numb < 1)
  31.                     System.out.println("Ошибка!!! Введите чётное положительное число.");
  32.             }
  33.             while (numb % 2 != 0 || numb < 1);
  34.             int[] ar = new int[numb];
  35.             for (int i =0; i < ar.length; i++){
  36.                 ar[i] = (int)(Math.random()*11) -5;
  37.                 System.out.print(ar[i] + " ");
  38.                 sumRightHalf += ar[i]; //сумма всего массива
  39.             }
  40.             for (int i = 0; i<ar.length/2;i++){
  41.                 sumLeftHalf += ar[i]; // сумма левой половины массива
  42.             }
  43.             System.out.println();
  44.             sumRightHalf = sumRightHalf - sumLeftHalf; // сумма правой половины массива
  45.             if (sumLeftHalf > sumRightHalf){
  46.                 System.out.println("Левая половина массива больше правой");
  47.             }else{
  48.                 if (sumRightHalf > sumLeftHalf){
  49.                     System.out.println("Правая половина массива больше левой");
  50.                 }else{
  51.                     System.out.println("Половины модулей равны");
  52.                 }
  53.             }
  54.         }
  55.     }
  56. }
Advertisement
Add Comment
Please, Sign In to add comment