L'île des mathématiques propose des cours et des exercices de maths et de physique.

L'île des Mathématiques

Forum : calculatrices :
Problème excel...

utilisation forumFAQ forumLaTeX  |  stats énigmesclassementénigmes  |  cherchenon répondus  |  statistiques sur forum
forums Forums >> autre >> chapitres >> calculatrices         [tout]

Pour plus d'options, connectez connectez vous !
   

#msg567404 posté le 26/06/2006 à 09:29

Problème excel...

autre niveauprofil de alpha20020posté par : alpha20020
Bonjour,

Je dois faire un grand calcul, il s'agit d'une factorielle d'un chiffre qui vole autour des 500... Seulement, ce satané programme me met #NOMBRE! . Donc, dois-je en déduire, que je peux oublier de calculer cela avec un tel programme?

Y aurait-il des freeware qui permette ce gnere de calcul?

Est-ce que c'est dur à programmer qqch en toppascal qui permettrait un calcul de cela...

En fait c'était pour résoudre une permutation avec répétition... Donc, s'il y a des programmes exprès pour...

Sinon, le plus simple serait de résoudre les factorielles non développées, juste?

Merci et pardon.
Bonne journée.
#msg567405 posté le 26/06/2006 à 09:40

re : Problème excel...

profil de _Estelle_posté par : _Estelle_ (privilegié)
Bonjour,

Program Factorielle;
uses Wincrt;
Var I, N,F : Integer;
Begin
Repeat
Write('N :');
Readln(N);
Until N>=0;
F : = 1;
For I : = 1 To N Do
F : =  F * I;
Write('Le produit factorielle est :',F);
End.


Estelle
#msg567406 posté le 26/06/2006 à 09:41

re : Problème excel...

profil de _Estelle_posté par : _Estelle_ (privilegié)
(En Turbo Pascal.)

C'est à tester...

Estelle
#msg567407 posté le 26/06/2006 à 09:43

re : Problème excel...

profil de _Estelle_posté par : _Estelle_ (privilegié)
En fait, ce n'est pas bon, désolée.

Estelle
#msg567408 posté le 26/06/2006 à 09:45

re : Problème excel...

profil de alpha20020posté par : alpha20020
Ca a pas l'air de marcher... il connait pas le user et les  :.

Enfin, la j'ai pas le temps de regarder le problème plus en détail... (Faut que j'aille faire le ménage )

Mais Estelle, pour apprendre à taper ca, tu as eu un cours et tout, ou t'as regarder le fichier d'aide ou des tutorials en linge ?
#msg567409 posté le 26/06/2006 à 09:46

re : Problème excel...

profil de Nicolas_75posté par : correcteur Nicolas_75 (Correcteur)
Bonjour alpha20020,

a. Si tu donnes l'entier dont tu veux la factorielle, je peux te donner le résultat en passant par Java et sa classe BigInteger.

b. Si tu donnes ton énoncé, on peut peut-être t'aider.

c. Pour mon information, qu'appelles-tu une "permutation avec répétition" ?

Cordialement,

Nicolas
#msg567410 posté le 26/06/2006 à 09:47

re : Problème excel...

profil de Nicolas_75posté par : correcteur Nicolas_75 (Correcteur)

Les "tutorials en linge", c'est pour étendre la lessive après avoir fait le ménage ?
#msg567412 posté le 26/06/2006 à 09:53

re : Problème excel...

profil de _Estelle_posté par : _Estelle_ (privilegié)
(Salut Nicolas.)

Alpha : quel "user" ?

Je ne me suis pas servi des tutoriaux en ligne, mais on a fait un peu de PAscal au lycée.

Estelle
#msg567413 posté le 26/06/2006 à 10:02

re : Problème excel...

profil de alpha20020posté par : alpha20020
Nicolas>

a.+b. Pour la factorielle, vais simplifier le tout, normalement ca ira... Mais c'est gentil...

c.

où n1+n2+3+...=n
C'est quelque chose dans ce style, mais on aviat une table qui employait un  np
pour donner une fin à la formule.  Notre professeur nous disais de démontrer celà avec les lettres  aabbb
On a 5 lettres, donc P5 mots indiscernables. Ensuite si je les note ainsi a1 a2 b1 b2 b3 j'aurai P2 . P3 mot discernables. Donc, si je veux savoir tout les mots indiscernables différents, sans que j'ai par exemple a1 a2 b1 b2 b3, a2 a1 b2 b1 b3, etc. Enfin, j'ai tapé ca en vitesse. Mais je peux aller rechercher dans mes notes, si tu veux plus de détails...

d. Sans commentaires

Estelle> Pardon, erreur de frappe...

Et sinon pour ce qui est de la programmation, si je dois me mettre à un langage, vous me conseillerez lequel? Ca dépendra de ce que je veux faire, non? Mais niveau polyvalence, lequel sera le plus polyvalent...

Bonne journée...

édit Océane
#msg567414 posté le 26/06/2006 à 10:03

re : Problème excel...

profil de alpha20020posté par : alpha20020
Ah zut, ca avais pas mis la longue ligne dans l'apercu!!!

"To!"
#msg567415 posté le 26/06/2006 à 10:07

re : Problème excel...

profil de Nicolas_75posté par : correcteur Nicolas_75 (Correcteur)
Bonjour, Estelle.

alpha20020, merci pour ton explication. Je vois parfaitement de quoi tu parles.
Pour ma part, j'appelle cela les "permutations avec éléments indiscernables", mais c'est la même chose. Et le coefficient avec les factorielles qui intervient est souvent appelé "coefficient multinomial".

Nicolas
#msg567424 posté le 26/06/2006 à 10:58

re : Problème excel...

profil de alpha20020posté par : alpha20020
Je vais me faire taper sur les doigts, mais le coefficient, c'est bien la division ou il y a les factorielles? Et le multinomal signifie quelque chose de spécial?
#msg567432 posté le 26/06/2006 à 11:20

re : Problème excel...

profil de Nicolas_75posté par : correcteur Nicolas_75 (Correcteur)

Coefficient binomial :

Coefficient multinomial :
#msg567437 posté le 26/06/2006 à 11:31

re : Problème excel...

profil de J-Pposté par : correcteur J-P (Correcteur)
500! = 1,220136825991110068701238785723.10^1134 dixit la calculette fournie avec Windows.

C'est vrai que cela dépasse les capacité de calcul de Excel.

#msg567438 posté le 26/06/2006 à 11:32

re : Problème excel...

profil de J-Pposté par : correcteur J-P (Correcteur)
Désolé pour l'orthographe.

#msg567448 posté le 26/06/2006 à 12:01

re : Problème excel...

profil de Nicolas_75posté par : correcteur Nicolas_75 (Correcteur)
Sauf erreur,

500! = 12201368259911100687012387854230469262535743428031928421924135883 85845373153881997605496447502203281863013616477148203584163378722 07817720048078520515932928547790757193933060377296085908627042917 45478824249127263443056701732707694610628023104526442188787894657 54777149863494367781037644274033827365397471386477878495438489595 53753799042324106127132698432774571554630997720278101456108118837 37095310163563244329870295638966289116589747695720879269288712817 80070265174507768410719624390394322536422605234945850129918571501 24870696156814162535905669342381300885624924689156412677565448188 65065938479517753608940057452389403357984763639449053130623237490 66445048824665075946735862074637925184200459369692981022263971952 59719094521782333175693458150855233282076282002340262690789834245 17120062077146409794561161276291459512372299133401695523638509428 85592018727433795173014586357570828355780158735432768888680120399 88238470215146760544540766353598417443048012893831389688163948746 96588175045069263653381750554781286400000000000000000000000000000 00000000000000000000000000000000000000000000000000000000000000000 000000000000000000000000000000|FIN

Nicolas

édit Océane
#msg567539 posté le 26/06/2006 à 17:55

re : Problème excel...

profil de _Estelle_posté par : _Estelle_ (privilegié)
Concernant Pascal, c'est bizarre qu'il ne reconnaise pas "uses", chez moi (bien que ça ne marche quand même pas ) il n'y a pas de problème avec.

Estelle
#msg567540 posté le 26/06/2006 à 17:58

re : Problème excel...

profil de Nicolas_75posté par : correcteur Nicolas_75 (Correcteur)
Océane, merci et désolé.

500! a été produit par Java, class BigInteger.
#msg567541 posté le 26/06/2006 à 18:05

re : Problème excel...

profil de _Estelle_posté par : _Estelle_ (privilegié)
Est-il possible que 500! soit trop grand pour Pascal ?

J'ai modifié un peu le programme, et maintenant ça marche. 3!=6 ; 4!=24 ; mais pour 500!, j'ai 0

Je vais créer un nouveau topic à propos de ce programme pour ne pas polluer celui d'alpha.

Estelle
#msg567543 posté le 26/06/2006 à 18:14

re : Problème excel...

profil de Nicolas_75posté par : correcteur Nicolas_75 (Correcteur)
Tu dépasses tout simplement la "taille" possible d'un entier en Pascal.

En Java, c'est +/- 9.10^18 (sauf classe BigInteger). En Pascal, je ne sais plus...
#msg567545 posté le 26/06/2006 à 18:21

re : Problème excel...

profil de _Estelle_posté par : _Estelle_ (privilegié)
Ah d'accord, merci Nicolas.

Estelle
#msg567551 posté le 26/06/2006 à 18:29

re : Problème excel...

profil de alpha20020posté par : alpha20020
Continue seulement ici, ca le pollue pas, ou en tout cas si tu en crée un autre, j'espère ne pas le louper...

Nicolas, merci encore pour tes précisions...

Bref, allez la suisse et bonne soirée
#msg567554 posté le 26/06/2006 à 18:32

re : Problème excel...

profil de _Estelle_posté par : _Estelle_ (privilegié)
Merci Alpha.

En fait, je crois qu'il y a un problème dans mon programme, parce que jusqu'à 7!, tout marche, mais pour 8!, il ne trouve plus la bonne valeur.

Quelqu'un a une idée d'où cela peut venir ? La limite n'est tout de même pas entre 5040 et 40320 ?!

Estelle
#msg567577 posté le 26/06/2006 à 20:02

re : Problème excel...

profil de benitoelputoamoposté par : benitoelputoamo
Je crois que Maple calcule les factorielles!
#msg567719 posté le 26/06/2006 à 23:26

re : Problème excel...

profil de cinnamonposté par : cinnamon (privilegié)
Salut Estelle,

citation :
En fait, je crois qu'il y a un problème dans mon programme, parce que jusqu'à 7!, tout marche, mais pour 8!, il ne trouve plus la bonne valeur.

Quelqu'un a une idée d'où cela peut venir ? La limite n'est tout de même pas entre 5040 et 40320 ?!


Je trouve bizarre que tu n'arrives pas à calculer des nombres supérieurs à 8! sous Pascal.
En effet, pour mon projet informatique de cette année, j'ai écrit un programme récursif qui calcule les factorielles et qui fonctionne assez bien au delà de 8! (je ne me souviens pas à partir de quelle valeur il y a un problème de mémoire)...

Voici le code de la fonction en question (les commentaires sont entre accolades):

function FACTORIELLE(nb : integer):integer ;
{Cacul du factoriel d'un nombre}

begin
        if nb =0   {condition d'arrêt}
        then
                result := 1
        else     {descente dans la récursivité}
                result := nb*FACTORIELLE(nb-1);
end;

________________________

Voilà, j'espère que cela pourra t'aider.

à+

#msg567720 posté le 26/06/2006 à 23:29

re : Problème excel...

profil de cinnamonposté par : cinnamon (privilegié)
Je reviens sur ma remarque : "je ne me souviens pas à partir de quelle valeur il y a un problème de mémoire".

Oublie-là .

Le souci de mémoire n'intervient pas dans cette procédure-ci (j'ai vraiment besoin de sommeil ).

à+

#msg567752 posté le 27/06/2006 à 06:54

re : Problème excel...

profil de _Estelle_posté par : _Estelle_ (privilegié)
Bonjour cinnamon,

Je ne sais pas ce qu'est la récursivité. Je vais me renseigner pour essayer de comprendre ton programme.

Merci

Estelle
#msg567755 posté le 27/06/2006 à 08:27

re : Problème excel...

profil de J-Pposté par : correcteur J-P (Correcteur)
-Estelle_

En fonction de la version de turbo Pascal employée, la taille mémoire réservée pour une variable Integer diffère.

Sur d'anciennes versions du Turbo Pascal, la taille était de seulement 16 bits, comme l'Integer est un nombre signé, sur ces versions, un Integer peut varier de -32768 à +32767

Comme 7! = 5040, pas de problème, mais 8! = 40320 et donc n'est pas permis.

Sur d'autres versions de Turbo Pascal, une variable Integer est en 32 bits, et dans ce cas pas de problème avec 8!
-----
#msg567758 posté le 27/06/2006 à 09:00

re : Problème excel...

profil de Nicolas_75posté par : correcteur Nicolas_75 (Correcteur)
Estelle,

La récursivité n'est rien d'autre qu'une sorte de récurrence descendante.
On fait appel à la fonction... au coeur de la fonction.

Le programme proposée par cinnamon reprend exactement la définition suivante de la factorielle :


Nicolas
#msg567788 posté le 27/06/2006 à 12:28

re : Problème excel...

profil de stokastikposté par : stokastik

Moi j'ai toujours conçu qu'un procédé "récursif" est un procédé par récurrence, montante ou descendante
#msg567796 posté le 27/06/2006 à 13:19

re : Problème excel...

profil de Nicolas_75posté par : correcteur Nicolas_75 (Correcteur)
Je suis d'accord avec toi sur le principe, stokastik : récurrence montante ou descendante.
Mais mon expérience me porte à croire que c'est la plupart du temps une récurrence descendante.
Mais chacun fait comme il veut...
#msg1924026 posté le 26/06/2008 à 09:07

help

profil de ines_03posté par : ines_03
je ss debutante au java  ........... a c ke tu peux m aider??????

Répondre à ce sujet

Seuls les membres peuvent poster sur le forum !

Un modérateur est susceptible de supprimer toute contribution qui ne serait pas en relation avec le thème de discussion abordé, la ligne éditoriale du site, ou qui serait contraire à la loi.
utilisation forumFAQ forumLaTeX  |  stats énigmesclassementénigmes  |  cherchenon répondus  |  statistiques sur forum
forums Forums >> autre >> chapitres >> calculatrices         [tout]

Pour plus d'options, connectez connectez vous !
   


cours particuliers - cours de maths

Menu

Membres



page d'accueil.    favoris    imprimer

Voir aussi