diff --git a/lr13/task_2/e1.java b/lr13/task_2/e1.java new file mode 100644 index 0000000..39ecb2c --- /dev/null +++ b/lr13/task_2/e1.java @@ -0,0 +1,37 @@ +package lr13.task_2; + +public class e1 { + public static void main(String[] args) { + try { + int l = args.length; + System.out.println("размер массива = " + l); + + int sum = 0; + int count = 0; + + for (int i = 0; i < l; i++) { + int num = Integer.parseInt(args[i]); + + if (num > 0) { + sum += num; + count++; + } + } + + if (count == 0) { + throw new ArithmeticException("нет положительных элементов"); + } + + double avg = (double) sum / count; + + System.out.println("среднее = " + avg); + + } catch (NumberFormatException e) { + System.out.println("Ошибка: введена строка вместо числа"); + } catch (ArithmeticException e) { + System.out.println("Ошибка: " + e.getMessage()); + } finally { + System.out.println("программа завершена"); + } + } +} diff --git a/lr13/task_2/e2.java b/lr13/task_2/e2.java new file mode 100644 index 0000000..e47f680 --- /dev/null +++ b/lr13/task_2/e2.java @@ -0,0 +1,41 @@ +package lr13.task_2; + +import java.util.*; + +public class e2 { + public static void main(String[] args) { + Scanner sc = new Scanner(System.in); + + try { + System.out.print("Введите строки и столбцы: "); + int n = sc.nextInt(); + int m = sc.nextInt(); + + int[][] a = new int[n][m]; + + System.out.println("Введите матрицу:"); + + for (int i = 0; i < n; i++) { + for (int j = 0; j < m; j++) { + a[i][j] = sc.nextInt(); + } + } + + System.out.print("Введите номер столбца: "); + int col = sc.nextInt(); + + System.out.println("Столбец:"); + + for (int i = 0; i < n; i++) { + System.out.println(a[i][col]); + } + + } catch (InputMismatchException e) { + System.out.println("Ошибка: введена строка вместо числа"); + } catch (ArrayIndexOutOfBoundsException e) { + System.out.println("Ошибка: нет такого столбца"); + } finally { + System.out.println("Работа завершена"); + } + } +} diff --git a/lr13/task_2/e3.java b/lr13/task_2/e3.java new file mode 100644 index 0000000..20788fc --- /dev/null +++ b/lr13/task_2/e3.java @@ -0,0 +1,35 @@ +package lr13.task_2; + +public class e3 { + public static void main(String[] args) { + + try { + int l = args.length; + System.out.println("размер массива = " + l); + + byte[] arr = new byte[l]; + int sum = 0; + + for (int i = 0; i < l; i++) { + + int num = Integer.parseInt(args[i]); + + if (num < -128 || num > 127) { + throw new ArithmeticException("выход за диапазон byte"); + } + + arr[i] = (byte) num; + sum += arr[i]; + } + + System.out.println("сумма = " + sum); + + } catch (NumberFormatException e) { + System.out.println("Ошибка: введена строка вместо числа"); + } catch (ArithmeticException e) { + System.out.println("Ошибка: " + e.getMessage()); + } finally { + System.out.println("программа завершена"); + } + } +} \ No newline at end of file