powered by simpleCommunicator - 2.0.61     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Java [игнор отключен] [закрыт для гостей] / Треугольник Паскаля
15 сообщений из 15, страница 1 из 1
Треугольник Паскаля
    #37546801
kenny_CK
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
24.
25.
26.
27.
28.
29.
30.
31.
 public   class  PascalTriangle {
     public   static   final   int  LINES =  10 ; 

  public   static   void  main(String[] args) {  

  int [][] p =  new   int  [LINES] [];  

 p[ 0 ] =  new   int [ 1 ]; 

 System. out. println (p [ 0 ] [ 0 ] =  1 ); 

 p[ 1 ] =  new   int [ 2 ];  

 p[ 1 ][ 0 ] = p[ 1 ][ 1 ] =  1 ; 

 System.out.println(p[ 1 ][ 0 ] + " " + p[ 1 ][ 1 ]);  

  for  ( int  i =  2 ; i < LINES; i++){  

 p[i] =  new   int [i+ 1 ]; 

 System.out.print((p[i][ 0 ] =  1 ) + " ");  

  for  ( int  j =  1 ; j < i; j++) 

 System.out. print ( (p[i] [j] =p[i- 1 ][j- 1 ] -p[i- 1 ][j]) + " ");  

 System.out. println (p [ i] [i]  =   1 );
 
 }
}
}
Пример с учебника. При выполнении:
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
 1 
 1   1 
 1   0   1 
 1   1  - 1   1 
 1   0   2  - 2   1 
 1   1  - 2   4  - 3   1 
 1   0   3  - 6   7  - 4   1 
 1   1  - 3   9  - 13   11  - 5   1 
 1   0   4  - 12   22  - 24   16  - 6   1 
 1   1  - 4   16  - 34   46  - 40   22  - 7   1 

// Где закралась ошибка?
// Как еще можно выполнить треугольник паскаля?
2b | ! 2b
...
Рейтинг: 0 / 0
Треугольник Паскаля
    #37546950
kiR@ch
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
А что должно быть? В чем ошибка?
...
Рейтинг: 0 / 0
Треугольник Паскаля
    #37547003
kenny_CK
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
 1 
 1   1 
 1   2   1 
 1   3   3   1 
 1   4   6   4   1 
 1   5   10   10   5   1 
 1   6   15   20   15   6   1 
 1   7   21   35   35   21   7   1 
 1   8   28   56   70   56   28   8   1 
 1   9   36   84   126   126   84   36   9   1 
...
Рейтинг: 0 / 0
Треугольник Паскаля
    #37547022
kiR@ch
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
kenny_CK System.out. print ( (p[i] [j] =p[i-1][j-1] -p[i-1][j]) + " ");
Ну судя по описанию, там должен быть плюс, ведь треугольник то сложением получается.
И код лучше приводить со всеми отступами, потому что сейчас это нечитаемая каша.
...
Рейтинг: 0 / 0
Треугольник Паскаля
    #37547024
kiR@ch
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Т.е. должно быть
Код: plaintext
System.out. print ( (p[i] [j] =p[i- 1 ][j- 1 ] + p[i- 1 ][j]) + " ");  
...
Рейтинг: 0 / 0
Треугольник Паскаля
    #37547025
kiR@ch
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
kiR@ch,

И последний раз: (в прошлый разметка закралась):
System.out. print ( (p[i] [j] =p[i-1][j-1] + p[i-1][j]) + " ");
...
Рейтинг: 0 / 0
Треугольник Паскаля
    #37547026
Фотография grasoff.net
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
p[i-1][j-1] -p[i-1][j]) + " ");

p[i-1][j-1] + p[i-1][j]) + " ");
...
Рейтинг: 0 / 0
Треугольник Паскаля
    #37547027
Фотография grasoff.net
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
оке ) я опоздал
...
Рейтинг: 0 / 0
Треугольник Паскаля
    #37547031
kenny_CK
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
24.
25.
26.
27.
28.
29.
30.
31.
32.
33.
34.
35.
36.
 public   class  TwoDAgain {
     public   static   void  main(String args[]){

		 int  twoD[][] =  new   int [ 4 ][];

		twoD[ 0 ] =  new   int [ 1 ];

		twoD[ 1 ] =  new   int [ 2 ];

		twoD[ 2 ] =  new   int [ 3 ];

		twoD[ 3 ] =  new   int [ 4 ];

		 int  i, j, k =  0 ;

		 for (i =  0 ; i <  4 ; i++)

			 for (j =  0 ; j < i+ 1 ; j++){

				twoD[i][j] = k;

				k++;

			}

		 for (i =  0 ; i <  4 ; i++){

			 for (j =  0 ; j < i+ 1 ; j++)

				System.out.print(twoD[i][j]+" ");

			System.out.println();

		}

	}
}
Код: plaintext
1.
2.
3.
4.
run:
 0  
 1   2  
 3   4   5  
 6   7   8   9 

Как работают циклы в этом примере? Каким образом k >= 4 и как после n столбцов мы переходим на System.out.println(); ?
...
Рейтинг: 0 / 0
Треугольник Паскаля
    #37547238
kiR@ch
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
kenny_CKКак работают циклы в этом примере? Каким образом k >= 4 и как после n столбцов мы переходим на System.out.println(); ?
Ну такие базовые вещи, как циклы, вам никто здесь объяснять не будет. И самое главное, не сможет вот так в нескольких предложениях донести до вас. Мой вам совет: садитесь и на бумажечке прогоняете программу. Сначала ставите i=1, и дальше пошло, вычисляете чему равны переменные на каждой итерации цикла. Помогает понять логику.
...
Рейтинг: 0 / 0
Период между сообщениями больше года.
Треугольник Паскаля
    #38088725
artembs
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
kenny_CK, а как построить его наоборот
0
00
000
0000
00000
а то вообще не получается(((
...
Рейтинг: 0 / 0
Треугольник Паскаля
    #38088728
artembs
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
kiR@ch,

что б 0 начинался не слева на право, а с права на лево
...
Рейтинг: 0 / 0
Треугольник Паскаля
    #38088733
artembs
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
kiR@ch, что б 0 начинался не с лева на право, а наоборот справа на лево
...
Рейтинг: 0 / 0
Треугольник Паскаля
    #38091472
silvan
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
artembs,

Код: java
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
        System.out.println("reverse");
        for (int i=1; i<=LINES; i++)
        {
            for (int j=1; j<=LINES; j++)
                if (j <= (LINES-i))
                    System.out.print("  ");
                else
                    System.out.print(p[i-1][LINES-j]+" ");
            System.out.println();
        }
...
Рейтинг: 0 / 0
Треугольник Паскаля
    #38092076
Фотография mayton
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
artembs, обычно так не делают. Но можно. Есть прямая формула расчета биномиальных коэффициентов.
с(n,m)=n!/(m!(n-m)!). Это по сути диагональ матрицы паскаля. Где n,m - координаты ячейки. Но она
содержит в числителе и знаметателе несократимые функции факториалов которые при расчётах
легко переполняют разрядные сетки даже для 64-битных целы. Надо оно вам или нет - решайте сами.
...
Рейтинг: 0 / 0
15 сообщений из 15, страница 1 из 1
Форумы / Java [игнор отключен] [закрыт для гостей] / Треугольник Паскаля
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]