bonjour,
j'ai une équation mathématique celle de la symétrie d'incertitude mais j'ai pas réussi à l'exprimer en langage de programmation(langage C),car elle contient des équation de probabilités.
voici les équation en pièces jointes.
merci
Version imprimable
bonjour,
j'ai une équation mathématique celle de la symétrie d'incertitude mais j'ai pas réussi à l'exprimer en langage de programmation(langage C),car elle contient des équation de probabilités.
voici les équation en pièces jointes.
merci
Bravo.
Et quelle serait ta question?
"Je voudrais les écrire en C"
Pour les résoudre?
"Oui"
Il va surement te falloir un outil de calcul formel, ou alors tu connais déjà la réponse théorique, il ne te manque qu'une application numérique.
Bon courage!
PS: première fois que j'écris cinq messages en un seul :mrgreen:
oui je veux les écrire en C afin de résoudre une équation mais je ne sais pas la procédure! comment faire?
je sais qu'est ce qu'elle fait en théorie mais je ne sais pas qu'est ce que un outil de calcul formel et comment l'écrire en langage de programmation.
merci
Sais-tu la résoudre avec papier et un crayon?
Si oui, dis nous comment, et on pourra t'aider.
Si non, il te faut un programme ou un langage capable de calculer avec les symboles, pas seulement les données numériques (ce qu'on appelle le calcul formel).
Bonjour,
Comme tu dois le savoir, Sigma, « Σ », est une lettre qui symbolise la somme d'un ensemble de valeurs apparentées et pour les repérer entre elles, on utilise un indice, généralement « i » que l'on retrouve dans les noms des expressions et que l'on peut éventuellement impliquer dans l'équation. Lorsque tu en es à calculer le résultat, tu additionnes itérativement toutes les valeurs, successivement. Ou alors tu les poses dans une colonne mais cela revient au même, tu additionnes toutes les unités, successivement, puis toutes les dizaines, etc.
En informatique, tu vas faire la même chose : si tu ne disposes pas d'outil dédié faisant ce travail à ta place et te permettant d'exprimer ce que tu veux faire, alors tu écris un programme qui va répéter n fois le même traitement en l'appliquant à chaque fois à la valeur suivante. Autrement dit, tu fais une boucle.
Lorsque ton indice court, par exemple, de un à dix, tu énonces ta formule « Somme, pour i allant de 1 à 10, de … ». Et il se trouve que « pour » se dit « for » en anglais. C'est donc tout naturellement que ce terme a été choisi comme mot-clé en C, en Basic et dans la plupart des langages qui ont suivi pour mettre en place une boucle avec un indice.
Après, P(Xi), c'est la probabilité de chacun des événements de X. Et ça, en l'état actuel des choses, on ne la connaît pas a priori. C'est donc à toi de nous la fournir.
En C, donc, ça va donner quelque chose dans ce goût-là :
Code:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16 #include <stdio.h> int main (void) { float p[10] = { 0.5, 0.6, 0.9, 0.2, 0.4, 0.3, 0.2, 0.6, 0.7 }; float resultat; int i; for (i=0,resultat=0 ; i<10 ; i++) { resultat += p[i]; } printf ("Résultat : %f\n",resultat); return 0; }
Le problème est qu'il s'agit d'une probabilité pour la première de X sachant Y.
Donc tu vas devoir jouer avec un tableau non pas de 1 mais de 2 dimensions.
Car si je me souviens bien: P(A|B) = P(A inter B) / P(B).
Après le log(...) c'est juste ce que tu as calculé avant.
Je te conseille vraiment de l'écrire parce qu'autant c'est faisable sur papier, autant ça peut etre horrible à programmer sans savoir ou tu vas ;)
Et peut être que le C n'est pas le plus approprié pour ce genre de problèmes.
Souvenirs d'étudiant sortant de Terminale S : OCaml était vraiment excellent pour se lancer dans la programmation depuis uniquement des cours de lycée de maths/physique/... (sans cours d'informatique ou autre).
Bref, mon intervention n'est peut être pas utile, mais es-tu sûr de vouloir le faire en C ?
Connais-tu le C ? Car si tu ne te sens pas très à l'aise dessus, autant partir sur des langages vraiment adaptés à l'expression de fonctions, pour ensuite te permettre de rester sur une réflexion plutôt proche des maths (dont OCaml est un bon compromis).