1 public static boolean is Balanced int arr
פתרון - 1 תרגיל public static boolean is. Balanced (int [][] arr){ int all = 0, diagonal = 0; for (int i = 0; i < arr. length; i++){ for (int j = 0; j < arr[i]. length; j++){ all += arr[i][j]; if (i == j) diagonal += arr[i][j]; } } return 2*diagonal == all; } 3
פתרון - 2 תרגיל public static boolean is. Sorted (int [][] arr){ return is. Column. Sorted(arr) && is. Row. Sorted(arr); } public static boolean is. Row. Sorted(int[][] arr) { for (int i = 0; i < arr. length; i++) for (int j = 1 ; j < arr[0]. length; j++) if (arr[i][j - 1] > arr[i][j]) return false; return true; } public static boolean is. Column. Sorted(int[][] arr) { for (int i = 1; i < arr. length; i++) for (int j = 0 ; j < arr[0]. length; j++) if (arr[i-1][j] > arr[i][j]) return false; return true; } 5
' – פתרון חלק א 3 תרגיל public static void input. Arr(int[][] arr) { Scanner sc = new Scanner(System. in); int i, j; //loop counters System. out. println("Please enter 15 rows and 18 columns"); for(i=0; i<arr. length; i++){ for(j=0; j<arr[i]. length; j++){ arr[i][j] = sc. next. Int(); } } }
' – פתרון חלק ב 3 תרגיל private static boolean is. Flowery(int[][] arr) { int count=0; //number of flowers for(int i=0; i<arr. length; i++) for(int j=0; j<arr[i]. length; j++) if (is. Flower(arr, i, j)) count++; return count >= 5; } public static boolean is. Flower(int[][] arr, int i, int j) { int sum; //sum of flower's elements if(i==0 || i == arr. length-1 || j==0 || j == arr[0]. length-1) return false; sum=arr[i-1][j-1]+arr[i-1][j+1]+arr[i+1][j-1]+arr[i+1][j+1]; if(arr[i][j]==sum) return true; else return false; }
פתרון - 4 תרגיל public static String[] get. Excellent. Students(String[]students, int[]grades){ double avg = calc. Average(grades); int excellent. Count = above. Average(grades, avg); String [] excellent. Student = new String[excellent. Count]; int [] excellent. Grades = new int [excellent. Count]; for (int i = 0, j = 0; i < grades. length; i++){ if (grades[i] >= avg){ excellent. Grades[j] = grades[i]; excellent. Student[j] = students[i]; j++; } } selection. Sort(excellent. Grades , excellent. Student); return excellent. Student; } 10
פתרון - 4 תרגיל public static int above. Average(int[] grades, double avg) { int count = 0; for (int i = 0; i < grades. length; i++) { if (grades[i] > avg) count++; } return count; } public static double calc. Average(int[] grades) { double avg = 0; for (int i = 0; i < grades. length; i++) avg += grades[i]; return avg / grades. length; } 11
פתרון - 4 תרגיל public static void selection. Sort (int [] arr, String[] strs){ for(int i=0; i<arr. length; i++){ int min_pos=i; for(int j=i+1; j<arr. length; j++){ if ( arr[j] < arr[min_pos] ) min_pos=j; } String tmp = strs[i]; // help variable strs[i] = strs[min_pos]; strs[min_pos] = tmp; int temp = arr[i]; // help variable arr[i]=arr[min_pos]; arr[min_pos]=temp; } } 12
- Slides: 12