Да се напише програма, която изчислява и извежда на екрана стойността на дадена позиция в триъгълника на Паскал по въведени от потребителя ред и позиция в него. Да се провери дали входните данни са валидни преди да се продължи с изчисляването на позицията.
Всяко число от вътрешността на триъгълника е сума от двете числа, непосредствено разположени над него.
Бонусче: Да се състави двумерен масив с всички стойности на триъгълника до въведения ред (включително) и да се изведе на екрана.
Не се притеснявайте да използвате функции :)
Решение използващо рекурсия. Фактически това решение е споменато в условието: „Всяко число от вътрешността на триъгълника е сума от двете числа, непосредствено разположени над него.“ или изразено математически с формула
C(n, k) = C(n-1, k-1) + C(n-1, k)
с начални стойности
C(n, 0) = 1 за всички цели числа n по-големи или равни на 0
C(0, k) = 0 за всички цели числа k по-големи от 0
т.е. комбинация на k от n елемента.
Възможно е да се реши и с цикъл for използвайки нерекурсивна формула.
Ха, супер решение, и колко просто! Рекурсивните често са такива попадения. Интересна задача, стига човек да може да отдели времето да помисли по нея. Като гледам обаче задачата не получи вниманието, което заслужаваше – може би заради изпитите по английски или заради това, че условието беше малко по-сложно (въпреки страхотната анимация, която си добавил :-). Нищо, другия път…