Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- package dynnewton;
- import java.util.Scanner;
- public class DynNewton {
- public static void main(String[] args) {
- Scanner skanuj = new Scanner(System.in);
- int n, k;
- System.out.println("Obliczanie symbolu newtona metoda Dynamiczna");
- //0 <= k < n
- //Wczytujemy tak dlugo az n i k spelnia warunki symbolu newtona
- // do {
- // System.out.print("Podaj n= ");
- // n = skanuj.nextInt();
- // System.out.print("Podaj k= ");
- // k = skanuj.nextInt();
- // } while (0 > k || k > n);
- n=3;
- k=3;
- int nKolumna = n + 1; //kolumny n=0,1,2,3,4,5..
- int kWiersz = k + 1; //wiersze k=0,1,2,3..
- int[][] tablicaNewton = new int[kWiersz][nKolumna];
- //Zgodnie z definicja uzupelniamy tablice 1 w odpowiednich miejscach
- for (int i = 0; i < kWiersz; i++) //0,1,2,3
- {
- for (int j = 0; j < nKolumna; j++) { //0,1,2,3,4,5
- if (i == 0) {
- tablicaNewton[i][j] = 1;
- }
- if (i == j) {
- tablicaNewton[i][j] = 1;
- }
- }
- }
- //Suma dwoch odpowiednich poprzednich wyrazow pozwala obliczyc nam symbol newtona
- for (int i = 1; i < kWiersz; i++) //0,1,2,3
- {
- for (int j = i + 1; j < nKolumna; j++) { //0,1,2,3,4,5
- tablicaNewton[i][j] = tablicaNewton[i - 1][j - 1] + tablicaNewton[i][j - 1];
- }
- }
- for (int i = 0; i < kWiersz; i++) {
- for (int j = 0; j < nKolumna; j++) {
- System.out.print(tablicaNewton[i][j] + " ");
- }
- System.out.println(" ");
- }
- System.out.println("Wynik: " + n + " nad " + k + " wynosi: " + tablicaNewton[k][n]);
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement