Forum de mathématiques - Bibm@th.net
Vous n'êtes pas identifié(e).
- Contributions : Récentes | Sans réponse
- Accueil
- » Programmation
- » generate a pascal triangle well
- » Répondre
Répondre
Résumé de la discussion (messages les plus récents en premier)
- pentium mix
- 18-12-2023 04:47:23
Bonjour
Merci beaucoup
Voici une idée qui m'est venu en tète actuellement: utiliser des dataframes,
import pandas as pd
def TriangleDePascal(n):
T=np.eye(n, dtype=int)
for i in range(n):
T[i,0]=1
for i in range(2,n):
for j in range (1,i):
T[i,j]=T[i-1,j-1]+T[i-1,j]
return T
n=int(input("n="))
df = pd.DataFrame(T)
df[df == 0] = "" # remplace toutes les valeurs 0 par du vide
print(df)
Bonsoir,
Je n'ai pas compris si tu voulais ou si tu ne voulais pas utiliser de liste, mais en tout cas, en partant d'un tableau, sauf à changer la façon d'afficher à la fin, tu auras toujours des zéros. Voici une solution qui fonctionne avec des listes.
def TriangleDePascal(n):
T=[]
for i in range(n):
T.append([1])
for i in range(2,n):
for j in range (1,i-1):
T[i].append(T[i-1][j-1]+T[i-1][j])
T[i].append(1)
for i in range(n):
print(*T[i],' ')
- Fred
- 17-12-2023 21:27:31
Bonsoir,
Je n'ai pas compris si tu voulais ou si tu ne voulais pas utiliser de liste, mais en tout cas, en partant d'un tableau, sauf à changer la façon d'afficher à la fin, tu auras toujours des zéros. Voici une solution qui fonctionne avec des listes.
def TriangleDePascal(n):
T=[]
for i in range(n):
T.append([1])
for i in range(2,n):
for j in range (1,i-1):
T[i].append(T[i-1][j-1]+T[i-1][j])
T[i].append(1)
for i in range(n):
print(*T[i],' ')
- pentium mix
- 17-12-2023 20:36:06
bonsoir tout le monde, je souhaite générer le triangle de pascal tel qu'il est dans les livres mais ne sais comment faire pour ne plus afficher les 0 et puis je ne veux pas aussi travailler avec des listes
mon programme
def TriangleDePascal(n):
T=np.eye(n, dtype=int) ## matrice identité
for i in range(n):
T[i,0]=1 # remplir la première colonne
for i in range(2,n):
for j in range (1,i):
T[i,j]=T[i-1,j-1]+T[i-1,j]
for elt in T:
print(*elt, sep=" ")







