[pascal] calcul mathématique

calcul mathématique [pascal] - Delphi/Pascal - Programmation

Marsh Posté le 14-02-2004 à 00:35:11    

salut,
je me demandais comment on pouvais calculer les factoriels en pascal  :??:  
 :hello:

Reply

Marsh Posté le 14-02-2004 à 00:35:11   

Reply

Marsh Posté le 14-02-2004 à 03:33:33    

Je n'ai pas vraiment réfléchi au problème mais je pense qu'une piste intéressante serait d'utiliser l'opérateur « * ». Pascal a cette particularité de savoir multiplier les entiers ; tu devrais la mettre à profit.

Reply

Marsh Posté le 14-02-2004 à 08:49:02    

merci, je sui très avancé.
sauf que je ne sais pas comment lui dire dans le cas de 5! de faire 1*2*...*n
 :hello:

Reply

Marsh Posté le 14-02-2004 à 11:01:59    

un simple programme comme ça :  

Code :
  1. program fact;
  2. var i,j,n:integer;
  3. begin
  4. Write('Entrez le nombre n : '); ReadLn(n);
  5. j:=1;
  6. for i:=1 to n do
  7.   j:=j*i;
  8. WriteLn(n, '! = ', j);
  9. Readln;
  10. end.


ça doit fonctionner, ça marche bien sur que pour des entiers positif
la factorielle d'un réel c'est autre chose encore


---------------
The world does not belong to those who get up early but to those who never sleep
Reply

Marsh Posté le 14-02-2004 à 16:17:32    

Flyounet_57 a écrit :


la factorielle d'un réel c'est autre chose encore


Ca se définit comment une factorielle de réel ?
 
En prépa (1973), on avait vu les exponentielles de matrices, mais me souviens pas des factorielles hors entiers (positif !).
 
Vite, avant que je devienne gâteux...
 
Rq : Attention aux "débordements" si n grand, ça "grimpe" vite ces bêtes là.

Reply

Marsh Posté le 14-02-2004 à 16:30:10    

on a vu ça en tp la derniere fois :  
avec x réel positif :
 
x! ≈ (x^x * ℮(-x) * √(2*pi*x)) * (1 + 1/(12x) + 1/(288x²))
 
ça s'appele la formule de Stirling


Message édité par Flyounet_57 le 14-02-2004 à 16:32:31

---------------
The world does not belong to those who get up early but to those who never sleep
Reply

Marsh Posté le 14-02-2004 à 17:56:57    

Carbon 14 >> fonction gamma
g(x) = I(0, inf) t^(x-1)*e^-t dt
http://www.univ-bpclermont.fr/form [...] ode48.html

Reply

Marsh Posté le 14-02-2004 à 18:04:16    

Flyounet_57 : la formule de Stirling n'est absolument pas une extension de la factorielle aux réels. C'est juste un equivalent en +oo.

Reply

Marsh Posté le 14-02-2004 à 22:00:09    

Je vais m'endormir moins bête ce soir. Stirling, je connais le nom sans avoir ce qu'il y a derrière.
 
La série de courbes me fait penser à des calculs sur des systèmes multicouches avec indices particuliers. Y en a qui cherchaient des racines, en vain. Pb numérique délicat (pentes "infinies" ).
 
La chimie, c'est quand même plus concret..

Reply

Marsh Posté le 15-02-2004 à 10:14:43    

la chimie, c'est pareil, il faut savoir ce qu'il y a derrière...
sinon ce n'est pas plus concret... ;))

Reply

Marsh Posté le 15-02-2004 à 10:14:43   

Reply

Marsh Posté le 27-02-2004 à 09:54:43    

Tu peut aussi essayer la récurcivité ;)


---------------
Tout est possible mais rien n'est garantie
Reply

Marsh Posté le 15-04-2004 à 18:45:35    

Pour ceux qui digèrent plutôt mal les notions les plus abstraites des mathématiques et qui sont empêchés pour cette raison à la compréhension d?autres notions plus pratiques, comme celles des logarithmes qui interviennent dans la plupart des techniques et notamment en astronomie :
 
LES LOGARITHMES ENTIERS un ouvrage de 122 pages pour la modique somme de 8 Euros.
 
Le sujet : Tout le monde, ou presque, sait utiliser les logarithmes et comprend leur utilité. Sans les logarithmes il est difficile d?élever un nombre à une puissance de forte valeur ou de valeur fractionnaire, et pis encore, d?extraire la racine nième d?un nombre quelconque mais tout le monde sait le faire grâce à l?emploi des logarithmes. En revanche, pour la plupart, pour ne pas dire tous, l?origine des logarithmes, c?est-à-dire la façon de les calculer , reste inconnue ou plus ou moins mystérieuse. C?est-à-dire que lorsque l?on utilise les logarithmes, on ne sait pas très bien ce que l?on fait. Ca marche, mais on ne sait pas pourquoi, c?est un peu une sorte de recette de cuisine qui fait de bons petits plats pour le palais de tous, mais dont le chef, derrière ses fourneaux, garde jalousement le secret.
Pour les logarithmes, qu?en est-il ? Traditionnellement, l?étude de la fonction logarithmique et exponentielle passe par l?étude préalable des séries sous leurs différentes formes, convergentes, alternées? et les arcanes de l?analyse mathématique avec les fonctions primitives et leurs dérivées, intégrales et autres différentielles?
Bref, des passages obligés dont l?intérêt n?est pas discutable, mais qui font souvent perdre de vue, en l?occurrence, la finalité pragmatique du logarithme. Ne cherchons nous pas tout simplement un moyen de remplacer la multiplication par l?addition, la division par la soustraction et, par suite, l?élévation à une puissance par une multiplication? ? Je vous propose une façon de trouver ce moyen qui se passe des méandres discutés précédemment. Cette méthode est à la portée d?un élève du primaire, elle permet de savoir calculer un logarithme et surtout de comprendre pourquoi on l?obtient. Savoir calculer un logarithme ne sert à rien, mais comprendre sa genèse dissipe bien des mystères, et ainsi, son utilisation ne relève plus de la recette de cuisine.
Ce n?est pas un traité d?astronomie, pourtant, je ne me suis pas privé de référer à cet art que nous partageons à chaque occasion, et le premier exemple d?emploi du logarithme que j?ai utilisé repose sur le calcul de la distance Terre/Soleil par la magnitude.
Je suis l?auteur et l?éditeur de cet ouvrage que je vends pratiquement au prix de revient, car je n?ai pas pu l?imprimer moi-même. Bien sûr, le tirage est limité et quand il n?y en aura plus, et bien? il n?y en aura plus, à moins que la quantité insatisfaite en commande soit telle que cela vaille la peine de relancer une centaine de réimpression, mais nous n?en sommes pas là. Ne vous laissez pas abuser par la terminologie « entier », ces logarithmes sont les mêmes que ceux qui vous ont tourmenté au lycée, ce n?est que la méthode développée dans l?ouvrage qui m?a inspiré ce qualificatif et ce titre.
 
Si le côté intrigant des logarithmes entiers vous intéresse, alors passez commande :
 
Serge Rochain, 25 impasse des Sauges, Rochegrise, 11100 Narbonne.  
Avec un chèque de 8 Euros par exemplaire, et 2 Euros de frais de port (3 Euros pour deux exemplaires), pour ceux qui ne viennent pas le chercher sur place.
Si vous souhaitez d?abord en savoir plus : http://


Message édité par Serge Rochain le 15-04-2004 à 23:32:09
Reply

Marsh Posté le 15-04-2004 à 18:57:43    

Si je puis me permettre de mettre mon grain de sel dans la question des factorielles, la réponse à la question d'origine est certainement de boucler sur un algorithme qui multiplie le produit précédent par la nouvelle valeur d'un "compteur que l'on fait évoluer de plus 1 à chaque itération, jusqu'à ce que ce "compteur" soit égale à la factorielle recherchée.
Pour ce qui est des factorielles de réels l'auteur de cette façon de s'exprimer voulait certainement dire avec une variable déclarée comme réelle au lieu dêtre déclaré comme un entier. Bien sur, il n'est de factorielles que par le produit de la série des entiers de 1 à n pour la factorielle n! Notez tout de même que 0! = 1
La formule de Stirling permet d'approcher la valeur d'une factorielle sans être contraint à cette épouvantable série de multiplications. L'erreur en absolu est d'autant plus grande que la factorielle est élevée, mais en revanche, l'erreur relative l'est d'autant moins.
 
Enfin, lisez donc "LES LOGARITHMES ENTIERS" vous y trouverez un exemple de leur emploi précisément dans le cadre des probabilités qui font un usage intensif des factorielles.
 
Allez voir le site que je vous suggère dans l'annonce relative à la promotion de mon bouquin.
 
Bien amicalement,
Serge Rochain

Reply

Marsh Posté le 15-04-2004 à 23:33:51    

pas de pub pour vendre des trucs :non:


---------------
mes programmes ·· les voitures dans les films ·· apprenez à écrire
Reply

Sujets relatifs:

Leave a Replay

Make sure you enter the(*)required information where indicate.HTML code is not allowed