pascalTriangle.py 1.5 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253
  1. # Copyright (C) 2020, 2019 Girish M
  2. # This program is free software; you can redistribute it and/or modify
  3. # it under the terms of the GNU General Public License as published by
  4. # the Free Software Foundation; either version 3 of the License, or
  5. # (at your option) any later version.
  6. #
  7. # This program is distributed in the hope that it will be useful,
  8. # but WITHOUT ANY WARRANTY; without even the implied warranty of
  9. # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
  10. # GNU General Public License for more details.
  11. #
  12. # You should have received a copy of the GNU General Public License
  13. # along with this program; if not, write to the Free Software
  14. # Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston,
  15. # MA 02110-1301, USA.
  16. #
  17. import math
  18. n = input("how many lines should the Pascal triangle have?")
  19. pattern = ''
  20. odd = 1
  21. if n < 1:
  22. print"enter a bigger number"
  23. elif n > 150:
  24. print"enter a smaller number"
  25. else:
  26. while n > 0:
  27. spaces = n - 1
  28. '''print spaces'''
  29. while spaces > 0:
  30. pattern = pattern + ' '
  31. spaces = spaces - 1
  32. '''print Pascal number'''
  33. pn = 1
  34. while pn > 0:
  35. r = 0
  36. while r <= n:
  37. pattern = pattern + ' ' + str(math.factorial(n)/((math.factorial(n-r)*math.factorial(r))))
  38. r = r+1
  39. pn = pn - 1
  40. pattern = pattern + '\n'
  41. pn = pn + 1
  42. odd = odd + 2
  43. n = n - 1
  44. print pattern