Welcome to collectivesolver - Programming & Software Q&A with code examples. A website with trusted programming answers. All programs are tested and work.

Contact: aviboots(AT)netvision.net.il

Semrush - keyword research tool

Turn ChatGPT, Claude, Gemini, And CoPilot Into Your Personal Assistant, Business Coach, Content Creator, And More

AFFILIATE MARKETING Your all-in-one performance engine Manage affiliates, creators, and customer referrals in one unified platform—turning every partnership into measurable growth
Secure & Reliable Web Hosting, Free Domain, Free SSL, 1-Click WordPress Install, Expert 24/7 Support

Boost your online presence with premium web hosting and servers

Disclosure: My content contains affiliate links.

42,683 questions

55,435 answers

573 users

How to generate Pascal triangle as a 2D array in Pascal

1 Answer

0 votes
program PascalsTriangleProgram;

{ Define a type for a two-dimensional array }
type
  TTriangle = array of array of integer;

{ Function to generate Pascal's Triangle }
procedure GeneratePascalsTriangle(n: integer; var triangle: TTriangle);
var
  i, j: integer;
begin
  SetLength(triangle, n); { Create an array with 'n' rows }

  for i := 0 to n - 1 do
  begin
    SetLength(triangle[i], i + 1); { Initialize each row with 1s }
    triangle[i][0] := 1; { First element is always 1 }
    triangle[i][i] := 1; { Last element is always 1 }

    for j := 1 to i - 1 do
      triangle[i][j] := triangle[i - 1][j - 1] + triangle[i - 1][j]; { Compute values based on previous row }
  end;
end;

{ Procedure to print Pascal's Triangle }
procedure PrintPascalsTriangle(triangle: TTriangle);
var
  i, j: integer;
begin
  for i := 0 to High(triangle) do
  begin
    for j := 0 to High(triangle[i]) do
      Write(triangle[i][j], ' ');
    Writeln;
  end;
end;

{ Main program }
var
  rows: integer;
  pascalsTriangle: TTriangle;
begin
  rows := 6; // Number of rows 
  GeneratePascalsTriangle(rows, pascalsTriangle); { Call procedure to populate Pascal's Triangle }
  PrintPascalsTriangle(pascalsTriangle); { Print the generated triangle }
end.



  
(*
run:

1 
1 1 
1 2 1 
1 3 3 1 
1 4 6 4 1 
1 5 10 10 5 1 
  
*)  



 



answered May 25, 2025 by avibootz
...