fork download
  1. import java.util.ArrayList;
  2. import java.util.Scanner;
  3.  
  4. public class Main {
  5. public static void main(String[] args) {
  6. String matrixData = "5 -2 3 4 5 6 7 8 9 10\n" +
  7. "1 8 -3 4 5 6 7 8 9 10\n" +
  8. "1 2 -1 4 5 6 7 8 9 10\n" +
  9. "1 2 3 2 5 6 7 8 9 10\n" +
  10. "1 2 3 4 -5 6 7 8 9 10\n" +
  11. "1 2 3 4 5 4 7 8 9 10\n" +
  12. "1 2 3 4 5 6 -7 8 9 10\n" +
  13. "1 2 3 4 5 6 7 2 9 10\n" +
  14. "1 2 3 4 5 6 7 8 -9 10\n" +
  15. "1 2 3 4 5 6 7 8 9 1\n";
  16.  
  17. ArrayList<ArrayList<Double>> matrix = new ArrayList<>();
  18.  
  19. try {
  20. // Читаємо дані безпосередньо зі змінної (імітація файлу)
  21. Scanner scanner = new Scanner(matrixData);
  22.  
  23. while (scanner.hasNextLine()) {
  24. String line = scanner.nextLine().trim();
  25. if (line.isEmpty()) continue;
  26.  
  27. String[] values = line.split("\\s+");
  28. ArrayList<Double> row = new ArrayList<>();
  29.  
  30. for (String val : values) {
  31. row.add(Double.parseDouble(val.replace(",", ".")));
  32. }
  33. matrix.add(row);
  34. }
  35. scanner.close();
  36.  
  37. ArrayList<Double> positiveElements = new ArrayList<>();
  38. double sum = 0;
  39.  
  40. for (int i = 0; i < matrix.size(); i++) {
  41. if (i < matrix.get(i).size()) {
  42. double element = matrix.get(i).get(i);
  43. if (element > 0) {
  44. positiveElements.add(element);
  45. sum += element;
  46. }
  47. }
  48. }
  49.  
  50. if (!positiveElements.isEmpty()) {
  51. double average = sum / positiveElements.size();
  52. System.out.println("Додатні елементи на головній діагоналі: " + positiveElements);
  53. System.out.println("Середнє арифметичне: " + average);
  54. } else {
  55. System.out.println("На головній діагоналі немає додатних елементів.");
  56. }
  57.  
  58. } catch (NumberFormatException e) {
  59. System.out.println("Помилка формату: У даних є символи, які не є числами.");
  60. }
  61. }
  62. }
Success #stdin #stdout 0.14s 60896KB
stdin
Standard input is empty
stdout
Додатні елементи на головній діагоналі: [5.0, 8.0, 2.0, 4.0, 2.0, 1.0]
Середнє арифметичне: 3.6666666666666665