Calcul à trou avec multiples inconnues

Fermé
kowalskic2 Messages postés 6 Date d'inscription jeudi 2 novembre 2017 Statut Membre Dernière intervention 23 novembre 2017 - 23 nov. 2017 à 18:37
yg_be Messages postés 23295 Date d'inscription lundi 9 juin 2008 Statut Contributeur Dernière intervention 28 octobre 2024 - 23 nov. 2017 à 19:59
Salut tout le monde.
J’ai deux tableau, tab1 et tab2 ayant chacun le même nombre d’élément tel que :
tab1 = {1, 2, 3, 4, 5} ; tab2 = {x1, x2, x3, x4, x5}.
J’ai aussi l’équation suivante :
(1*x1) + (2*x2) + (3*x3) + (4*x4) + (5*x5) = 55. Je cherche donc une formule ou une méthode permettant de calculer chaque valeur de x. Ce qui me permettrait de les afficher à l’aide d’un printf. Merci d’avance.
A voir également:

2 réponses

yg_be Messages postés 23295 Date d'inscription lundi 9 juin 2008 Statut Contributeur Dernière intervention 28 octobre 2024 Ambassadeur 1 548
23 nov. 2017 à 18:58
bonjour, as-tu vraiment une seule équation à cinq inconnues?
0
kowalskic2 Messages postés 6 Date d'inscription jeudi 2 novembre 2017 Statut Membre Dernière intervention 23 novembre 2017
23 nov. 2017 à 19:03
oui
0
KX Messages postés 16752 Date d'inscription samedi 31 mai 2008 Statut Modérateur Dernière intervention 31 août 2024 3 019
23 nov. 2017 à 19:09
Bonjour,

Du coup tu pourrais avoir une infinité de solutions... si les x étaient réels.
Mais j'imagine ici que tu te limite à des x entiers positifs ? Ça réduit la difficulté.

Dans ce cas il faut envisager de faire des boucles imbriquées, en force brute, calculer toutes les combinaisons possibles et n'afficher que celles dont le calcul est correct.
0
kowalskic2 Messages postés 6 Date d'inscription jeudi 2 novembre 2017 Statut Membre Dernière intervention 23 novembre 2017
23 nov. 2017 à 19:21
Justement procéder par force brute prendra trop de temps si le nombre d'inconnues augmente. C'est pour cela que je cherche une autre méthode
0
KX Messages postés 16752 Date d'inscription samedi 31 mai 2008 Statut Modérateur Dernière intervention 31 août 2024 3 019
23 nov. 2017 à 19:28
"C'est pour cela que je cherche une autre méthode"
À quel moment tu as dis ça ?

Expliques mieux ton problème, une question imprécise ne peut pas conduire à une réponse pertinente.
0
yg_be Messages postés 23295 Date d'inscription lundi 9 juin 2008 Statut Contributeur Dernière intervention 28 octobre 2024 1 548
23 nov. 2017 à 19:59
cela ne prend pas beaucoup de temps, car tu peux procéder par récursivité:
tu fais une boucle sur X5 en commençant par 0, et tu arrêtes quand (5*x5) > 55
pour chaque valeur de X5, tu dois résoudre l'équation suivante:
(1*x1) + (2*x2) + (3*x3) + (4*x4) = 55 - (5*x5)
ce que tu fais par récursivité

je te laisse déterminer comment arrêter la récursivité.
0