public class Sum public static void mainString args
public class Sum { public static void main(String[] args) { int last. Ind = 10; int sum = sum. Nums(last. Ind ); System. out. println(“The sum of numbers from 1 to “+ last. Ind + “ = “ + sum); System. out. println(“The sum of numbers from 1 to “+ 8 + “ = “ + sum. Nums(8)); } } // returns the sum of numbers from 1 to end public static int sum. Nums(int end) { int sum = 0; for(int i = 1; i <= end; i = i+1) sum = sum + i; sum. Nums(10) return sum; end int 10 } main 0155 sum int 10 last. Ind int sum int 55 i int 1 7
פתרון - 1 תרגיל public static void print. Array(int[] arr) { for(int i=0; i < arr. length; i=i+1) { System. out. print(arr[i]+” ”); } System. out. println(); } 9
2 תרגיל של , k חישוב המקדם הבינומי המציין את מספר תתי הקבוצות בגודל . n קבוצה בגודל : n. Choose. K עליכם לכתוב את הפונקציה public class Bin. Coeff { public static void main(String[] args) { int n = 5 , k = 3; System. out. print("The number of different subsets of size " + k + " in a set of size " + n + " is: "); System. out. println(n. Choose. K(n, k)) ; } … } /* output : The number of different subsets of size 3 in a set of size 5 is: 10 */ 10
פתרון - 2 תרגיל // Assumes that n>=0 public static int factorial(int n) { int result = 1; for(int i=2; i <= n; i = i+1) { result = result * i; } return result; } public static int n. Choose. K(int n, int k) { int ans = 0; if (n>=k && k>=0) { ans = factorial(n) / (factorial(k) * factorial(n-k)); } return ans; } 11
פתרון - 3 תרגיל public static String insert. Substring(String s, int i, String sub) { if (s == null || sub == null || i < 0 || i >= s. length()) return null; String ans = s. substring(0, i) + sub + s. substring(i); return ans; } 13
public static void main (String[] args){ : main השיטה , לשם הבהרה int[] line 1 = {1, 2, 3, 4}; int[] line 2 = {5, 6, 7, 8}; int[] line 3 = {9}; int[] line 4 = new int[0]; int[][] m 1 = {line 1, line 2}; int[][] m 2 = {line 1, line 2, line 3}; int[][] m 3 = null; int[][] m 4 = {null, null}; int[][] m 5 = {line 4, line 4}; int[][] m 6 = {line 2, null}; int[][] m 7 = new int[0][0]; System. out. println(check. Matrix(m 1)); System. out. println(check. Matrix(m 2)); System. out. println(check. Matrix(m 3)); System. out. println(check. Matrix(m 4)); System. out. println(check. Matrix(m 5)); System. out. println(check. Matrix(m 6)); System. out. println(check. Matrix(m 7)); } : תדפיס true false false 15
פתרון - 4 תרגיל (m!=null && m. length>0 && m[0]!=null && m[0]. length>0); tmp && i<m. length && (m[i]!=null && m[0]. length==m[i]. length) 16
פתרון - 5 תרגיל public static int general. GCD(int m, int n) { int multiply = 1; while( (m % 2 == 0) && (n % 2 == 0) { multiply = multiply * 2; m = m / 2; n = n / 2; } return multiply * odd. GCD(m, n); } 18
פתרון - 6 תרגיל public static boolean check. GCD(int[] a){ boolean aliens = true; boolean not. Aliens = true; // each 2 are aliens // each 2 are not aliens for (int i = 0; i < a. length – 1 && (aliens || not. Aliens); i=i+1){ for (int j = i+1; j < a. length && (aliens || not. Aliens); j=j+1){ if (a[i] != a[j]) { if (gcd(a[i], a[j]) == 1) not. Aliens = false; else aliens = false; } } } return aliens || not. Aliens; } 20
פתרון - 7 תרגיל public static String[] replace. Extensions(String[] files, String extension, String new. Extension) { String [] ans = new String[files. length]; for (int i = 0; i < files. length; i++) { ans[i] = files[i]. replace. All(". "+extension, ". "+new. Extension); } return ans; } 22
- Slides: 22