Inscription / Connexion Nouveau Sujet
Niveau exercices
Partager :

Nombre de solutions

Posté par
flight
25-06-22 à 15:46

Bonjour,

Je vous propose l 'exercice suivant,

Quel est le nombre de solutions de l' equation 3x - 2y + z= 0, si x, y et z sont des entiers naturels tous compris entre 0 et 100 ?

Posté par
Zormuche
re : Nombre de solutions 26-06-22 à 02:28

 Cliquez pour afficher

Posté par
flight
re : Nombre de solutions 26-06-22 à 16:42

2567 est la bonne réponse mais une demonstration mathématique est possible aussi 😊

Posté par
jandri Correcteur
re : Nombre de solutions 27-06-22 à 09:49

Bonjour,

pour faire plaisir à flight voici une formule (avec deux symboles sigma) valable pour le nombre de solutions au problème généralisé aux entiers compris entre 0 et n :

 Cliquez pour afficher

Je note \lfloor x\rfloor la partie entière de x.

Posté par
flight
re : Nombre de solutions 27-06-22 à 18:10

Bonjour jandri , bravo !

j'ai un resultat présenté differement mais qui amene au meme resultat.

N =[ E(100+k)/3  -  E(k/2) ] + 51 ,   pour k compris entre 0 et 100.

Posté par
jandri Correcteur
re : Nombre de solutions 27-06-22 à 23:10

Je suis d'accord avec ta formule.

J'en ai déduit une formule explicite (sans symbole sigma avec une seule partie entière) valable pour le nombre de solutions au problème généralisé aux entiers compris entre 0 et n :

 Cliquez pour afficher


Après coup j'ai regardé sur l'OEIS : la suite y figure mais pas ma formule !

Posté par
jandri Correcteur
re : Nombre de solutions 01-07-22 à 23:00

Je n'ai pas trouvé de démonstration pour la formule donnée par flight mais je sais démontrer assez simplement la formule explicite que j'ai donnée.

Pour cela on montre que si u_n est le nombre de triplets solutions de 3x-2y+z=0 dans [[0,n]] alors u_n-u_{n-1}=\lfloor n/2\rfloor+1 sauf si n\equiv1\pmod3 où l'on n'ajoute pas le 1.

On montre ensuite que \sum_{k=0}^n\lfloor k/2\rfloor=\lfloor n^2/4\rfloor puis on trouve assez facilement le terme correctif

Posté par
LittleFox
re : Nombre de solutions 04-07-22 à 14:15

Pour Zormuche, on peut écrire plus simple :

from itertools import product
sum(3*x-2*y+z == 0 for x,y,z in product(range(101), repeat=3))



Vous devez être membre accéder à ce service...

Pas encore inscrit ?

1 compte par personne, multi-compte interdit !

Ou identifiez-vous :


Rester sur la page

Désolé, votre version d'Internet Explorer est plus que périmée ! Merci de le mettre à jour ou de télécharger Firefox ou Google Chrome pour utiliser le site. Votre ordinateur vous remerciera !