Advertisement
Guest User

Untitled

a guest
Oct 16th, 2019
112
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Java 2.77 KB | None | 0 0
  1. package com.company;
  2.  
  3. import java.io.FileInputStream;
  4. import java.io.FileNotFoundException;
  5. import java.io.FileWriter;
  6. import java.io.IOException;
  7.  
  8. public class Main {
  9.  
  10.  
  11.     static int[] getMax(int[][] mass) {
  12.         int[] maxArr = new int[mass.length];
  13.         for (int j = 0; j < mass.length; j++) {
  14.             int Max = mass[0][j];
  15.             for (int i = 1; i < mass.length; i++) {
  16.                 if (mass[i][j] > Max) {
  17.                     Max = mass[i][j];
  18.                 }
  19.             }
  20.             maxArr[j] = Max;
  21.         }
  22.         return maxArr;
  23.     }
  24.  
  25.  
  26.     static int[] getMin(int[][] mass) {
  27.         int[] minArr = new int[mass.length];
  28.         for (int i = 0; i < mass.length; i++) {
  29.             int Min = mass[i][0];
  30.             for (int j = 1; j < mass.length; j++) {
  31.                 if (mass[i][j] < Min) {
  32.                     Min = mass[i][j];
  33.                 }
  34.             }
  35.             minArr[i] = Min;
  36.         }
  37.         return minArr;
  38.     }
  39.  
  40.     private static int currentIndex = -1;
  41.  
  42.     private static Integer next(String numbers[]) {
  43.         ++currentIndex;
  44.         while (currentIndex < numbers.length
  45.                 && numbers[currentIndex].equals(""))
  46.             ++currentIndex;
  47.         return currentIndex < numbers.length ?
  48.                 Integer.parseInt(numbers[currentIndex]) :
  49.                 null;
  50.     }
  51.  
  52.  
  53.     static void getPoint(int[][] mass, int[] minArr, int[] maxArr) throws IOException {
  54.         FileWriter out = new FileWriter("D:\\Labs\\labs 2-3\\result Java\\result.txt");
  55.         int res = 0;
  56.         for (int i = 0; i < mass.length; i++) {
  57.             for (int j = 0; j < mass.length; j++) {
  58.                 if (mass[i][j] == minArr[i] && mass[i][j] == maxArr[j]) {
  59.                     out.write("Седловой точкой является число " + (mass[i][j]) + " в " + (i + 1) + "-ой стороке " + (j + 1) + "-ого столбца.");
  60.                     res += 1;
  61.                 }
  62.             }
  63.         }
  64.         if (res == 0) {
  65.             out.write("В данной матрице седловых точек нет.");
  66.         }
  67.         out.close();
  68.     }
  69.  
  70.  
  71.     public static void main(String[] args) throws IOException {
  72.         FileInputStream in = new FileInputStream("D:\\Labs\\labs 2-3\\text\\task.txt");
  73.         byte[] str = new byte[in.available()];
  74.         in.read(str);
  75.         String text = new String(str);
  76.  
  77.         String[] numbers = text.split("\\D");
  78.         int i, j;
  79.         int n = next(numbers);
  80.         int[][] Mass = new int[n][n];
  81.  
  82.         for (i = 0; i < n; ++i) {
  83.             for (j = 0; j < n; ++j) {
  84.                 Mass[i][j] = next(numbers);
  85.             }
  86.         }
  87.         in.close();
  88.         getPoint(Mass, getMin(Mass), getMax(Mass));
  89.     }
  90. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement