Einzelnen Beitrag anzeigen

Benutzerbild von Aphton
Aphton

Registriert seit: 31. Mai 2009
1.198 Beiträge
 
Turbo Delphi für Win32
 
#1

Pascalsches Dreieck

  Alt 9. Aug 2010, 15:39
Beschäftige mich gerade mit Kurven (Bezierkurven) und bin hier gerade bei Gleichungen N'ten Grades.
Fürs Lösen dieser braucht man die Binomialkoeffizienten, die man durch diese rekursive Funktion ermitteln kann.
Ist nichts großartiges, aber weils hier noch nicht vorhanden war, füg ichs mal hinzu.
Verbesserungsvorschläge sind natürlich willkommen.

Delphi-Quellcode:
type
  TIntArray = Array of Integer;

function PascalsTriangle(N: Integer): TIntArray;

  function _CalcPT(Values: TIntArray; const cN: Integer): TIntArray;
  var
    i, LastValue, CurrentValue: Integer;
  begin
    SetLength( Result, cN );
    Result[0] := Values[0];
    Result[High(Result)] := Values[High(Values)];
    LastValue := Result[0];
    for i := 1 to High(Result)-1 do
    begin
      Result[i] := LastValue + Values[i];
      LastValue := Values[i];
    end;
    if cN <= N then
      Result := _CalcPT( Result, cN + 1 );
  end;

begin
  if N > 0 then
  begin
    SetLength( Result, 2 );
    Result[0] := 1;
    Result[1] := 1;
    if N > 1 then
      Result := _CalcPT( Result, 3 );
  end else
    SetLength( Result, 0 );
end;
Ergebnisse der Funktion (Listenindexnummer entspricht dem Grad N):
  1. [1, 1]
  2. [1, 2, 1]
  3. [1, 3, 3, 1]
  4. [1, 4, 6, 4, 1]
  5. [1, 5, 10, 10, 5, 1]

Quelle: http://mathematix.de/assets/files/un...sarbeitung.pdf
(Genauer: die zwei angehängten Grafiken)

MfG, Aphton
Miniaturansicht angehängter Grafiken
binomischeformelntengradesohnekoeffizienten.png   pascalschesdreieck.png  
das Erkennen beginnt, wenn der Erkennende vom zu Erkennenden Abstand nimmt
MfG
  Mit Zitat antworten Zitat