#Implementation of Pascal Triangle

num_of_lines = input("How many lines you want to display")

list1 = []

for i in range(num_of_lines):
    flag = 0
    tmp = []
    for j in range(i+1):
        if flag == 0 or j == i:
            tmp.append(1)    # for the first or teh last element of the line
            flag = 1
        else:
            tmp.append(list1[i-1][j-1]+list1[i-1][j])   # for rest, add teh numbers in previous  row
      
    list1.append(tmp)        

# this code prints the Pascal triangle

for i in range(num_of_lines):
    for j in range(i+1):
        print list1[i][j],
    print

Output for num_lines = 5:
1
1 1
1 2 1
1 3 3 1
1 4 6 4 1
-----------------------------
THNAKS ONCE MORE.
 
On 10/5/06, Asrarahmed Kadri <[EMAIL PROTECTED]> wrote:
Thank you so much.
I am trying to implement. I hope I can do it.
 
A gentle note: This is not a homework question.
I am learning python as a part of my Project work.


 
On 10/5/06, Luke Paireepinart <[EMAIL PROTECTED] > wrote:
Asrarahmed Kadri wrote:
> Its something very close.
> What I want is:
>
> 1
> 1 1
> 1 2 1
> 1 3 3 1
> 1 4 6 4 1
>
> This can be done using arrays, right or is there any other way??
They're not arrays, they're lists!
arrays imply contiguous memory blocks and single data types.
Lists are neither of these.
> My logic in C is:
>
> int arr[5][5];
> for (i=0;i<5;i++)
> {
>    flag = 0;
>    for (j=0;j<=i;j++)
> {
>    if (flag == 0 || j == i)  // print 1 if the array element is the
> first or the last number
>      {
>       arr[i][j] = 1;
>       flag = 1;
>     }
>   arr[i][j] = arr[i-1][j-1] + arr[i-1][j];
> }
Yes, you could do this in Python.
I'm guessing it'd be something like this:

lst = []
for x in range(5):
   tmp = []
   for y in range(x):
      if y == 0:
         tmp.append(1)
      else:
         tmp.append(tmp[y-1]) #this line would be different
   lst.append(tmp)

That's the best I can do.

HTH,
-Luke



--

To HIM you shall return.



--
To HIM you shall return.
_______________________________________________
Tutor maillist  -  Tutor@python.org
http://mail.python.org/mailman/listinfo/tutor

Reply via email to