Trójkąt Pascal'a - Python
-
jacek
13/09/2019
- Programowanie
- 2116 czytań 0 komentarzy
Informacje na temat Trójkąta Pascala znajdziemy w sieci więc n ie będę się tu nad tą teorią rozwodził. Ważne jest to jak osiągnąć ten cel. Pierwszy skrypt powstał w ramach organizowanego kursu. Kolejne to przykłady rozwiązań jakie można znaleźć w sieci. Widać widać rozwiązań może być wiele.
#!/usr/bin/python3
#-------------------------------------------------------------------------------
# Name: trójkąt Pascal'a v.1
# Purpose: python 3.7
#
# Author: astronom
#
# Created: 12-09-2019
# Copyright: (c) astronom 2019
# Licence: Jacek Patka Sekcja Astronomiczna
# Gwiezdne Wrota w Zaganiu
#-------------------------------------------------------------------------------
# -*- coding: UTF-8 -*-
ilewierszy = 20
szerokosc = 150
numer = [1]
linia = ''
for n in numer:
linia+= "%5d" % (n)
print(linia.center(szerokosc-1))
for i in range(ilewierszy):
nowynumer = [1]
pozycja = 0
while pozycja < len(numer)-1:
nowynumer.append(numer[pozycja] + numer[pozycja+1])
pozycja+=1
nowynumer.append(1)
numer = nowynumer.copy()
linia = ''
for n in numer:
linia+= "%7d" % (n)
print(linia.center(szerokosc-1))
#!/usr/bin/python3
#-------------------------------------------------------------------------------
# Name: trójkąt Pascal'a v.2
# Purpose: python 3.7
#
# Author: astronom
#
# Created: 12-09-2019
# Copyright: (c) astronom 2019
# Licence: Jacek Patka Sekcja Astronomiczna
# Gwiezdne Wrota w Zaganiu
#-------------------------------------------------------------------------------
# -*- coding: UTF-8 -*-
def pascal_triangle(n):
trow = [1]
y = [0]
for x in range(max(n,0)):
print(trow)
trow=[l+r for l,r in zip(trow+y, y+trow)]
return n>=1
pascal_triangle(20)
#!/usr/bin/python3
#-------------------------------------------------------------------------------
# Name: trójkąt Pascal'a v.3
# Purpose: python 3.7
#
# Author: astronom
#
# Created: 12-09-2019
# Copyright: (c) astronom 2019
# Licence: Jacek Patka Sekcja Astronomiczna
# Gwiezdne Wrota w Zaganiu
#-------------------------------------------------------------------------------
# -*- coding: UTF-8 -*-
n=int(input("Enter number of rows: "))
a=[]
for i in range(n):
a.append([])
a[i].append(1)
for j in range(1,i):
a[i].append(a[i-1][j-1]+a[i-1][j])
if(n!=0):
a[i].append(1)
for i in range(n):
print(" "*(n-i),end=" ",sep=" ")
for j in range(0,i+1):
print('{0:6}'.format(a[i][j]),end=" ",sep=" ")
print()
Dodaj komentarz
Zaloguj się, aby móc dodać komentarz.
Oceny
Tylko zarejestrowani użytkownicy mogą oceniać zawartość strony
Zaloguj się , żeby móc zagłosować.
Zaloguj się , żeby móc zagłosować.
Brak ocen. Może czas dodać swoją?



















































