Advertisement
Guest User

Untitled

a guest
Jun 30th, 2016
64
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 2.19 KB | None | 0 0
  1. package Start.Lesson8.HomeWork.TwoStarsArrays;
  2.  
  3. import java.util.Arrays;
  4. import java.util.Scanner;
  5.  
  6. /**
  7. * Task 4** (PascalTriangleCreator)
  8. * Написать метод создания треугольника Паскаля размера n+1. Если n < 0, бросить
  9. * исключение IllegalArgumentException.
  10. * Хитрые формулы использовать не нужно. Просто найдите закономерность в
  11. * построении треугольника.
  12. * int[][] createPascalTriangle(int n) !!!!!!ИЗМЕНИЛ НА ТИП ДАННЫХ long!!!!!!
  13. * Пример работы:
  14. * createPascalTriangle(0) => { {1} }
  15. * createPascalTriangle(3) =>{ {1},
  16. * {1, 1},
  17. * {1, 2, 1},
  18. * {1, 3, 3, 1} }
  19.  
  20. createPascalTriangle(-1)  IllegalArgumentException
  21. */
  22. public class PascalTriangleCreator {
  23. public static void main(String[] args) {
  24. int n = enterSize();
  25. checkNotNegative(n);
  26. int[][] matrix4 = new int[n + 1][];
  27. createPascalTriangle(n, matrix4);
  28. matrixPrinter(matrix4);
  29.  
  30. }
  31.  
  32. public static void createPascalTriangle(int n, int[][] matrix4) {
  33. for (int i = 0; i < n + 1; i++) {
  34. matrix4[i] = new int[i + 1];
  35. for (int j = 0; j < i + 1; j++) {
  36. if (j == 0 || j == i) {
  37. matrix4[i][j] = 1;
  38. } else {
  39. matrix4[i][j] = matrix4[i - 1][j - 1] + matrix4[i - 1][j];
  40. }
  41. }
  42. }
  43. }
  44.  
  45. public static void checkNotNegative(int n) {
  46. if (n < 0) {
  47. throw new IllegalArgumentException("You enter wrong number. Size must be >= 0");
  48. }
  49. }
  50.  
  51. public static int enterSize() {
  52. System.out.print("Please, enter number of rows in Pascal Triangle: ");
  53. Scanner enterSize = new Scanner(System.in);
  54. return enterSize.nextInt();
  55. }
  56. public static void matrixPrinter(int[][] matrix) {
  57. int row = 0;
  58. for (int[] array : matrix) {
  59. System.out.print(row + ": ");
  60. System.out.println(Arrays.toString(array));
  61. row++;
  62. }
  63. }
  64. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement