IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Algorithmes et structures de données Discussion :

Algorithme de calcul d'intégrale sur Algobox


Sujet :

Algorithmes et structures de données

  1. #1
    Nouveau Candidat au Club
    Homme Profil pro
    Étudiant
    Inscrit en
    Février 2017
    Messages
    5
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Hauts de Seine (Île de France)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Février 2017
    Messages : 5
    Points : 1
    Points
    1
    Par défaut Algorithme de calcul d'intégrale sur Algobox
    Bonjour à tous!
    C'est mon premier post sur ce forum, soyez indulgent (:
    J'ai un DM de maths à faire pour Lundi, sur les méthodes de calcul intégral par approximation. La première partie consistait à démontrer l'expression des suites qui approchaient les aires sous la courbe (soit les intégrales), chose assez aisée. Ce que j'ai trouvé ( on avait la réponse, c'était "démontrer que c'est bien égal"):

    Pour la méthode des rectangles:
    Rn=1/n [f(0)+f(1/n)+f(2/n)+...+f(n-1/n)]

    Pour la méthode des trapèzes:
    Tn=1/2n [f(0)+2f(1/n)+2f(2/n)+...+f(1)]

    Pour la méthode des points médians:
    Pn=1/n [f(1/2n)+f(3/2n)+...+f(2n-1/2n)]

    Maintenant, la deuxième partie, la ou se trouve mon problème:

    a)Soit f une fonction continue sur un intervalle [0;1], dont on suppose connue l'intégrale I sur [0;1]. Écrire trois algorithme Algo1, Algo2 et Algo3 à qui on fournit un réel strictement positif a (alpha), et qui renvoient le plus petit entier naturel n tel que abs(Rn-I)<=a, respectivement abs(Tn-I)<=a, respectivement abs(Pn-I)<=a

    b)On admet les trois inégalités suivantes: I1=integr(0,1) 1/1+t^2 dt = Pi/4, I2=integr(0,1) ln(t+1) dt=2ln(2)-1, I3=integr(0,1) 1/racine(1+t^2) dt = ln(racine(2)+1). Indiquer alors, dans chaqun des trois tableaux suivants, les valeurs de n renvoyées par les algorithmes Algo1, Algo2 et Algo3.
    Approximation I1 (Idem pour I2 et I3)
    Algo 1 Algo 2 Algo 3
    a=0.1
    a=0.01
    a=0.0001

    J'ai réussi à faire l'algorithme 1 sur calculatrice, mais elle n'est pas assez puissante pour les précisions élevées, la prof demande donc à ce que on le fasse sur Algobox. Sauf que j'ai utilisé le sigle Somme sur TI, qui (a priori) n'existe pas sur Algobox. J'ai donc tenté autre chose, mais après 3 heures de recherches infructueuses, je pense avoir trouvé mais une erreur apparait!!!!

    Si vous aviez une solution pour corriger, ou un autre algorithme à me montrer si le mien est faux, je vous en serait reconnaissant, parce que je commence à fatiguer sérieusement la!!!!! Je vous joint mon programme Algobox, l'erreur est ligne 19: "Algorithme interrompu ligne 19 suite à une erreur dans son exécution" (Il s'agit de la ligne "r prend la valeur ...")
    Images attachées Images attachées  

  2. #2
    Responsable Qt & Livres


    Avatar de dourouc05
    Homme Profil pro
    Ingénieur de recherche
    Inscrit en
    Août 2008
    Messages
    26 618
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Val de Marne (Île de France)

    Informations professionnelles :
    Activité : Ingénieur de recherche
    Secteur : Enseignement

    Informations forums :
    Inscription : Août 2008
    Messages : 26 618
    Points : 188 591
    Points
    188 591
    Par défaut


    Quand tu affectes la valeur de r, pouruqoi utilises-tu k ? A priori, cette variable n'est disponible que dans la boucle, pas après.
    Vous souhaitez participer aux rubriques Qt (tutoriels, FAQ, traductions) ou HPC ? Contactez-moi par MP.

    Créer des applications graphiques en Python avec PyQt5
    Créer des applications avec Qt 5.

    Pas de question d'ordre technique par MP !

  3. #3
    Nouveau Candidat au Club
    Homme Profil pro
    Étudiant
    Inscrit en
    Février 2017
    Messages
    5
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Hauts de Seine (Île de France)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Février 2017
    Messages : 5
    Points : 1
    Points
    1
    Par défaut
    Comment faire sans l'utiliser alors? Je m'étais dit que j'allais faire une suite qui regroupait chacun des termes selon les valeurs de n, et que je les additionnaient. Mon k représenterait donc la variable associée au rang dans la liste non?

  4. #4
    Nouveau Candidat au Club
    Homme Profil pro
    Étudiant
    Inscrit en
    Février 2017
    Messages
    5
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Hauts de Seine (Île de France)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Février 2017
    Messages : 5
    Points : 1
    Points
    1
    Par défaut
    J'ai répondu un peu vite tout à l'heure, mais évidemment merci de ta réponse Mon problème est bien que je ne sais pas quoi mettre en syntaxe pour ma somme si je ne met pas le k, vu que c'est justement ma variable qui décompte le rang de la liste, et ainsi j'additionne tout ces rangs multipliés par 1/n . Je me trompe peut-être complétement sur mon algorithme, après 3h de réflexion on commence a fatiguer sérieusement (demandez à mon clavier ) Si vous avez une autre idée, je suis ouvert à toute proposition

  5. #5
    Nouveau Candidat au Club
    Homme Profil pro
    Étudiant
    Inscrit en
    Février 2017
    Messages
    5
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Hauts de Seine (Île de France)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Février 2017
    Messages : 5
    Points : 1
    Points
    1
    Par défaut
    Je me parle seul, mais je viens de trouver la réponse à mon problème, je vous le poste au cas ou certains seraient intéressés!

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    VARIABLES
    	a EST_DU_TYPE NOMBRE
    	n EST_DU_TYPE NOMBRE
    	R EST_DU_TYPE NOMBRE
    	k EST_DU_TYPE NOMBRE
    	I EST_DU_TYPE NOMBRE
    DEBUT_ALGORITHME
    	n PREND_LA_VALEUR 2
    	LIRE a
    	I PREND_LA_VALEUR Math.PI/4
    	TANT_QUE (abs(R-I)>a) FAIRE
    		DEBUT_TANT_QUE
    		R PREND_LA_VALEUR 0
    		POUR k ALLANT_DE 0 A n-1
    			DEBUT_POUR
    			R PREND_LA_VALEUR R+1/(1+pow(k,2)/pow(n,2))
    			FIN_POUR
    		R PREND_LA_VALEUR R/n
    		n PREND_LA_VALEUR n+1
    		FIN_TANT_QUE
    	AFFICHER n
    FIN_ALGORITHME

  6. #6
    Nouveau Candidat au Club
    Homme Profil pro
    Étudiant
    Inscrit en
    Février 2017
    Messages
    5
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Hauts de Seine (Île de France)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Février 2017
    Messages : 5
    Points : 1
    Points
    1
    Par défaut
    J'ai un nouveau problème! Je me suis lancé dans les deux autres suites, sauf que cette fois il me dit que i y a une erreur de syntaxe, mais j'ai beau chercher je ne vois pas ou! Si vous la trouver, ça pourrait beaucoup m'aider!
    Images attachées Images attachées  

  7. #7
    Expert confirmé
    Avatar de anapurna
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Mai 2002
    Messages
    3 419
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : Arts - Culture

    Informations forums :
    Inscription : Mai 2002
    Messages : 3 419
    Points : 5 818
    Points
    5 818
    Par défaut
    salut

    T n'est pas initialisé au debut de la boucle
    Nous souhaitons la vérité et nous trouvons qu'incertitude. [...]
    Nous sommes incapables de ne pas souhaiter la vérité et le bonheur, et sommes incapables ni de certitude ni de bonheur.
    Blaise Pascal
    PS : n'oubliez pas le tag

Discussions similaires

  1. Réponses: 2
    Dernier message: 03/11/2011, 21h10
  2. Y-a t-il plusieurs algorithmes de calcul de l'amortissement d'un prêt?
    Par kouka dans le forum Algorithmes et structures de données
    Réponses: 9
    Dernier message: 12/09/2007, 13h33
  3. [Dates] Calcul tout bête sur une date...
    Par poah dans le forum Langage
    Réponses: 5
    Dernier message: 01/11/2005, 15h02
  4. Calcul des stats sur SYS et SYSTEM
    Par orafrance dans le forum Oracle
    Réponses: 8
    Dernier message: 05/10/2005, 16h25

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo