Générer n lignes du triangle de pascal ( utile pour développement polynomial )

Soyez le premier à donner votre avis sur cette source.

Snippet vu 13 586 fois - Téléchargée 24 fois

Contenu du snippet

Bon voilà j'ai développé cette application pour m'occuper.
Ce script génère sous la forme d'un tableau PHP un nombre n défini de lignes du triangle de Pascal.
Il suffit après d'effectuer un print_r(); et de correctement formater le tableau pour obtenir un triange de pascal.

Vous trouverez l'explication de la source ( comment je l'ai élaboré ) sur mon site personnel, http://www.hugolafitte.com
ainsi qu'un exemple d'utilisation sur cette page: http://tools.hugolafitte.com/outil_maths_pascal.ajx

Si vous désirez réaliser un script permettant de développer les identités remarquables ( a + b ) puissance X, la génération
de ce tableau peut simplifier grandement votre application :)

Source / Exemple :


$n = 15; // Nombre de lignes désirées
$c[0][0] = 1;
for ( $i = 1; $i <= $n ; $i++ )
	{
		$c[$i][0] = 1;
		for( $j = 1; $j <= $i ; $j++ )
			{
				$c[$i][$j] = $c[$i-1][$j-1] + $c[$i-1][$j];
			}
	}

Conclusion :


Voici le tableau PHP généré par le script ci-dessus:
Il suffit juste de formatter son affichage!

Array
(
[0] => Array
(
[0] => 1
)

[1] => Array
(
[0] => 1
[1] => 1
)

[2] => Array
(
[0] => 1
[1] => 2
[2] => 1
)

[3] => Array
(
[0] => 1
[1] => 3
[2] => 3
[3] => 1
)

// Etc....

A voir également

Ajouter un commentaire

Commentaires

Messages postés
12303
Date d'inscription
mardi 10 février 2004
Statut
Modérateur
Dernière intervention
30 juillet 2012
36
en meme temps, si tu definis et remplis ton tableau sans jamais t'en servir, ca sert un peu a rien...
Messages postés
15
Date d'inscription
jeudi 29 septembre 2005
Statut
Membre
Dernière intervention
7 avril 2008

Salut
J’ai essayé avec ses coudes source mais j’ai rien reçu comme affichage.
J’ai fait 2 pages une HTML

<html>
<head>
<title>Document sans titre</title>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
</head>




Triangle de pascal






<form name="form1" method="post" action=".\Triangle1.php">
Inserer un nombre:,


</form>


</html>




Et l’autre pour le scriptPHP

<html>
<head>
<title>Document sans titre</title>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
</head>


<?
$n = $_POST["n"]; // Nombre de lignes désirées
$c = array(array(1));

for($i=1;$i<=$n;$i++)
{
$c[$i] = array(1);

for($j=1;$j<=$i;$j++)
$c[$i][$j] = $c[$i-1][$j-1] + (isset($c[$i-1][$j]) ? $c[$i-1][$j] : 0);
}

?>

</html>
Messages postés
2
Date d'inscription
samedi 18 novembre 2006
Statut
Membre
Dernière intervention
19 novembre 2006

Il suffit de formatter le tableau obtenu, rien de très compliqué.
Messages postés
224
Date d'inscription
mercredi 21 avril 2004
Statut
Membre
Dernière intervention
29 mars 2009

Peux-tu mettre au passage le code l'affichage ?
Messages postés
224
Date d'inscription
mercredi 21 avril 2004
Statut
Membre
Dernière intervention
29 mars 2009

Très bien (j'ai mis 9) mais la méthode récursive possède un inconvénient pour les grandes valeurs : elle est lente.
Une autre méthode consiste à travailler ligne par ligne (voir le paragraphe III du document "La récursivité (où l'art de s'appeler soi-même) -­ Des exemples simples" à l'adresse http://christophe_bal.club.fr/DocPerso-Vulgarisation/Vulgarisation.html).

Sinon l'utilisation "intelligente" des factoriels avec la bibliothèque BCMath devrait satisfaire les calculateurs exigeants.

Cordialement.
C.
Afficher les 9 commentaires

Vous n'êtes pas encore membre ?

inscrivez-vous, c'est gratuit et ça prend moins d'une minute !

Les membres obtiennent plus de réponses que les utilisateurs anonymes.

Le fait d'être membre vous permet d'avoir un suivi détaillé de vos demandes et codes sources.

Le fait d'être membre vous permet d'avoir des options supplémentaires.