Bibm@th

Forum de mathématiques - Bibm@th.net

Bienvenue dans les forums du site BibM@th, des forums où on dit Bonjour (Bonsoir), Merci, S'il vous plaît...

Vous n'êtes pas identifié(e).

#1 Re : Entraide (supérieur) » Filtre de Kalman déphasé » 22-08-2020 13:56:31

Apparemment c'est normal, ce qui me surprend assez car je peux obtenir un résultat vraiment très proche avec une méthode bien plus simple.
Ça doit être plus adapté à des mouvements réguliers peut-être.

#2 Entraide (supérieur) » Filtre de Kalman déphasé » 30-07-2020 21:05:16

Terces
Réponses : 1

Bonjour à tous,

J'essaye de comprendre un peu le filtre de Kalman, tout n'est pas très clair pour le moment. Je me posait notamment une question assez importante, mon filtre de Kalman est déphasé ! Est-ce que c'est une erreur de ma part, ou est-ce que ça vient de la méthode ?
Sur internet j'ai trouvé un exemple qui est très proche de mes graphiques :

chart.png

C'est assez problématique car je veux faire une régression du bruit en directe et je ne suis donc pas censé connaitre les futures données.
En y réfléchissant, j'ai l'impression qu'il y a toujours un compromis à faire entre bien réduire le bruit et anticiper un événement (lorsqu'on ne connait pas le future) d'où mon interrogation sur Kalman, ça serait donc super et intéressant que je me sois trompé et qu'on puisse avoir le même résultat sans déphasage.

#4 Programmation » matplotlib => drawnow » 28-04-2017 19:37:07

Terces
Réponses : 0

Bonjour,

Est-ce que vous savez comment obtenir le module drawnow sur anaconda ?

Je suis allé voir en particulier ce lien : https://pypi.python.org/pypi/drawnow/0.44
Je l'ai téléchargé mais après je ne sais pas du tout comment faire.

#5 Re : Programmation » Puissance_4 » 31-03-2017 23:47:03

Re,

Je me suis un peu renseigné sur les IA et le "deep learning", est-ce que vous pensez que c'est possible de creer un programme (pour commencer un puissance 4) qui joue au départ aléatoirement et on le laisse jouer contre lui même pendant une heure pour qu'il comprenne comment gagner ?

Le faire jouer contre lui même pendant une heure c'est pas compliqué mais pour qu'il s'améliore, je ne vois pas comment faire à première vue.

#6 Programmation » Puissance_4 » 27-03-2017 22:17:24

Terces
Réponses : 1

Bonsoir,
J'ai essayé de programmer un puissance 4, voila le résultat si ca vous intéresse :
(il est possible qu'il arrive un problème mais il arrive rarement et je ne sais pas trop comment l'arranger simplement.)


from matplotlib import*
from matplotlib.pyplot import*
from numpy import*
from time import*
from random import*
taille = (8,8)
fig=figure(figsize=taille)
ax = fig.add_subplot(111)

axis('off')

grille=array([[0,0,0,0,0,0,0],
        [0,0,0,0,0,0,0],
        [0,0,0,0,0,0,0],
        [0,0,0,0,0,0,0],
        [0,0,0,0,0,0,0],
        [0,0,0,0,0,0,0],
        [0,0,0,0,0,0,0]])


for i in arange(-0.5,7.5,1):
    plot([-0.5,6.5],[i,i],'k')
    plot([i,i],[-0.5,6.5],'k')

   
def gagnant():
    #ligne :
    for x in range(0,4):
        for y in range(0,7):
            if grille[x,y]==grille[x+1,y]==grille[x+2,y]==grille[x+3,y]==1 :
                return 1
    #colonne :
    for x in range(0,7):
        for y in range(0,4):
            if grille[x,y]==grille[x,y+1]==grille[x,y+2]==grille[x,y+3]==1 :
                return 1
    #diagonale1 :
    for x in range(0,4):
        for y in range(0,4):
            if grille[x,y]==grille[x+1,y+1]==grille[x+2,y+2]==grille[x+3,y+3]==1 :
                return 1
    #diagonale2 :
    for x in range(0,4):
        for y in range(3,7):
            if grille[x,y]==grille[x+1,y-1]==grille[x+2,y-2]==grille[x+3,y-3]==1 :  
                return 1
               
    #ligne :
    for x in range(0,4):
        for y in range(0,7):
            if grille[x,y]==grille[x+1,y]==grille[x+2,y]==grille[x+3,y]==-1 :
                return -1
    #colonne :
    for x in range(0,7):
        for y in range(0,4):
            if grille[x,y]==grille[x,y+1]==grille[x,y+2]==grille[x,y+3]==-1 :
                return -1
    #diagonale1 :
    for x in range(0,4):
        for y in range(0,4):
            if grille[x,y]==grille[x+1,y+1]==grille[x+2,y+2]==grille[x+3,y+3]==-1 :
                return -1
    #diagonale2 :
    for x in range(0,4):
        for y in range(3,7):
            if grille[x,y]==grille[x+1,y-1]==grille[x+2,y-2]==grille[x+3,y-3]==-1 :
                return -1
    return 0


def ag():
    for k in range(0,7):
        print(grille[k,0],grille[k,1],grille[k,2],grille[k,3],grille[k,4],grille[k,5],grille[k,6])

def IA():
    #print(xposs)
    for x in range(0,7):
        v=0
        y=gravitéo(x)
        if y!=10:
            grille[x,y]=-1
   
            for i in range(0,4):
                for j in range(0,7):
                    if grille[i,j]==grille[i+1,j]==grille[i+2,j]==grille[i+3,j]==-1 :
                        v=1
            for i in range(0,7):
                for j in range(0,4):
                    if grille[i,j]==grille[i,j+1]==grille[i,j+2]==grille[i,j+3]==-1 :
                        v=1
            for i in range(0,4):
                for j in range(0,4):
                    if grille[i,j]==grille[i+1,j+1]==grille[i+2,j+2]==grille[i+3,j+3]==-1 :
                        v=1
            for i in range(0,4):
                for j in range(3,7):
                    if grille[i,j]==grille[i+1,j-1]==grille[i+2,j-2]==grille[i+3,j-3]==-1 :
                        v=1
           
            grille[x,y]=0
            if v==1 :
                #print('--------------------ordi gg')
                return x
         
            v=0        
            grille[x,y]=1  
            for i in range(0,4):
                for j in range(0,7):
                    if grille[i,j]==grille[i+1,j]==grille[i+2,j]==grille[i+3,j]==1 :
                        v=1
            for i in range(0,7):
                for j in range(0,4):
                    if grille[i,j]==grille[i,j+1]==grille[i,j+2]==grille[i,j+3]==1 :
                        v=1
            for i in range(0,4):
                for j in range(0,4):
                    if grille[i,j]==grille[i+1,j+1]==grille[i+2,j+2]==grille[i+3,j+3]==1 :
                        v=1
            for i in range(0,4):
                for j in range(3,7):
                    if grille[i,j]==grille[i+1,j-1]==grille[i+2,j-2]==grille[i+3,j-3]==1 :
                        v=1
   
            grille[x,y]=0            
            if v==1 :
                #print('--------------------block joueur')
                return x
 

    for i in range(1,5):
        j=0
        if grille[i-1,j]==0 and grille[i,j]==1 and grille[i+1,j]==1 and grille[i+2,j]==0:
            #print('gauche ou droite')
            return randrange(i-1,i+3,3)
        for j in range(1,7):
            if grille[i-1,j]==0 and grille[i,j]==1 and grille[i+1,j]==1 and grille[i+2,j]==0:
                if abs(grille[i-1,j-1])==1 or abs(grille[i+2,j-1])==1 :
                    #print('gauche ou droite')
                    return randrange(i-1,i+3,3)
           

    #print('random')
    shuffle(xposs)
    for x in range(0,len(xposs)):
         v=0
         x=xposs[x]
         y1=gravitéo(x)
         grille[x,y1]=-1
         for k in range(0,len(xposs)):
             k=xposs[k]
             y2=gravitéo(k)
             try :
                 grille[k,y2]=1
             except : break
             for i in range(0,4):
                for j in range(0,7):
                    if grille[i,j]==grille[i+1,j]==grille[i+2,j]==grille[i+3,j]==1 :
                        v=1
             for i in range(0,7):
                for j in range(0,4):
                    if grille[i,j]==grille[i,j+1]==grille[i,j+2]==grille[i,j+3]==1 :
                        v=1
             for i in range(0,4):
                for j in range(0,4):
                    if grille[i,j]==grille[i+1,j+1]==grille[i+2,j+2]==grille[i+3,j+3]==1 :
                        v=1
             for i in range(0,4):
                for j in range(3,7):
                    if grille[i,j]==grille[i+1,j-1]==grille[i+2,j-2]==grille[i+3,j-3]==1 :
                        v=1
             grille[k,y2]=0
         grille[x,y1]=0
         if v==0 :
             #print('--------------------Logique',x)
             return x      
         #else :
             #print('--------------------PAS Logique',x)
   
    h=randint(0,len(xposs)-1)
    return xposs[h]


def gravitéj(x):
    for y in range(0,7):
        if grille[x,y]==0 :
            return y

    print('cette colonne est déjà pleine !')
    return 0

def gravitéo(x):
    for y in range(0,7):
        if grille[x,y]==0 :
            return y
    try:
        xposs.remove(x)
    except ValueError : pass
    return 10


xposs=[0,1,2,3,4,5,6]

def jeu(event):
    x=int(event.xdata+0.5)
    y=gravitéj(x)
    grille[x,y]=1
    plot(x,y,'ro',markersize=50)
    gg=gagnant()
    if gg==0 :
        pass
    elif gg==1 :
        ax.set_title("Le joueur gagne",size=40,color='red')
    elif gg==-1 :
        ax.set_title("La machine gagne",size=40,color='blue')        
    draw()
    x=IA()
    y=gravitéo(x)
    grille[x,y]=-1
    plot(x,y,'bo',markersize=50)
    gg=gagnant()
    if gg==0 :
        pass
    elif gg==1 :
        ax.set_title("Le joueur gagne",size=40,color='red')
    elif gg==-1 :
        ax.set_title("La machine gagne",size=40,color='blue')        
    draw()
   

cid = fig.canvas.mpl_connect('button_press_event', jeu)
 

#7 Re : Cryptographie » Aide décryptage texte » 25-03-2017 19:00:45

Bonsoir DAVY83, poser deux fois la même question ne te fera pas avoir la réponse plus vite.

#8 Re : Entraide (supérieur) » série numérique » 25-03-2017 17:53:01

Salut,

si a>0 et b quelconque alors on n'a pas toujours Un >= 0
par exemple :
a=pi
n=1
b=1

#9 Programmation » Animation / pause » 25-03-2017 01:02:46

Terces
Réponses : 0

Bonjour,

J'ai voulu modéliser des chutes de balles suivant des toboggans de différentes formes et j'ai réussi avec le module animation de matplotlib ce qui donne un rendu fluide.
Cependant j'aimerais essayer sans ce module mais le "draw()" qui est censé forcer le traçage/retracage de la figure ne veut pas fonctionner dans la boucle dont j'ai besoin.
Apparemment il existe un module qui s’appelle drawnow qui résout ce problème mais il n'est pas inclu de base dans spyder.
Il restait un espoir : la pause(nbr_sec) avec le nbr de secondes qui est de minimum 0.001 d'après ce que j'ai vu.
Avec 0.001 sec je pensais que ca donnerait un résultat fluide comme avec le module animation mais en pratique c'est tout saccadé ! En fait je ne comprends pas trop pourquoi j'obtient une pause d'environ 0.4 secondes, même si il y a le programme qui tourne derrière, je n'ai rien mis d'autre que la pause entre le b=time() et l'affichage :

846036probpause.png

Avec donc en haut la compilation du code entier puis en bas la compilation du code en bleue.

#10 Re : Programmation » Installer Numpy » 19-03-2017 22:43:33

Salut,

j'ai eu des problèmes mais ayant maintenant spyder qui fonctionne très bien je n'ai pas besoin de les résoudre.
J'ai réussi à faire le squelette du programme que je voulais, maintenant je dois le finaliser.

@+

#11 Re : Programmation » Installer Numpy » 11-03-2017 01:27:07

Re :)
J'ai eu un problème avec l’installation de numpy et les autres, je les ai trouvé dans le lien que tu m'as indiqué mais mon pc ne savait pas avec quel logiciel les ouvrir et moi non plus ...

Enfin bref j'ai téléchargé "Anaconda" : https://www.continuum.io/downloads
Et dedans il y a un truc qui s’appelle "Spyder" sur lequel on peut coder et j'ai testé, on peut import numpy et matplotlib et sans doute d'autres librairies.

Voila a quoi ca ressemble :
424461spyder.png

#12 Re : Programmation » Installer Numpy » 28-12-2016 14:21:19

Hello yoshi ^^
Je ne sais pas mais je le ferais un jour, tu n'as pas écrit pour rien ;)
@+

#13 Enigmes, casse-têtes, curiosités et autres bizarreries » Découper un carré. » 10-12-2016 23:36:18

Terces
Réponses : 0

Bonjour,

Soit un carré de côté 4, combien existe-t-il de découpages différents de celui ci en rectangles de côtés entiers ?

J'ai commencé à y réfléchir mais je n'ai pas la réponse.

#14 Re : Enigmes, casse-têtes, curiosités et autres bizarreries » Dix sommes » 10-12-2016 22:38:06

solution

Bon j'ai lu vos solutions je reprends l'argument de la somme qui vaut 15 ^^
Ensuite,
Il est évident que la plus petite somme est a+b+c et que la deuxième plus petite est a+b+d.
Il est évident que la plus grande somme est c+d+e et que la deuxième plus grande est b+d+e.
donc on a assez d'équations pour trouver la solution :)

Quand on pose un tableau on aurait aussi pu voir que a+b+e + a+c+d = 4+8
et on peut faire ca pour les 2 autres couples du milieu (car on ne sait pas qui est plus grand que l'autre)
donc ca donne plein de bonnes équations.



Pour la vitesse moyenne on résout (d/60 = t+1/12      et      d/80=t-1/12)     v=d/t ce qui donne la solution.

#16 Re : Programmation » Installer Numpy » 06-12-2016 22:16:39

Re,

Dans ton programme le print n'avait pas besoin de parenthèses en 2005 ?
Je n'ai pas entendu parlé de la méthodes des tangentes(tu peux me dire rapidement le principe ? j'ai pas trouvé grand chose sur le net), j'ai suivi ce lien avant de programmer : http://userpages.irap.omp.eu/~rbelmont/ … ration.pdf
La "méthode de Gauss-Legendre" a apparemment une très bonne précision, mais je ne sais pas si je pourrais la programmer, à voir.

#17 Re : Programmation » Installer Numpy » 06-12-2016 20:35:18

Re^^

Ben je ne pensais pas qu'il faudrait "faire tout ca", je le verrais pendant les vacances je penses.
En attendant j'ai fait un truc sur python (et turtle) pour intégrer avec les rectangles/trapèzes/simpson/Monte Carlo   ca marche très bien mais j'ai un peu galérer pour obtenir une représentation visuelle (changement d’échelle et tout ca...).


Voila le code si ca t’intéresse^^ ("Im", "Ip" les bornes d'intégration "pt" pour le nombre de points que tu prends(impair à cause de simpson) et "pt" à la fin pour monte carlo)
L'inconveniant c'est que si ton ecran n'a pas les mêmes dimensions que le mien tu vas avoir un mauvais rendu.
J'essayerais de le refaire ces vacances avec matplotlib.





from math import*
from turtle import*
from random import uniform
bgcolor()
def f(x) :
    return sin(x)
Im=0
Ip=pi/2
pt=9


ht()
tracer(5)
def axe():
    up()
    goto(0,-700*(maxa+mina)/(2*(abs(maxa)+abs(mina))))
    down()
    fd(2000)
    fd(-4000)
    up()
    goto(-1400*(Ip+Im)/(2*(abs(Ip)+abs(Im))),0)
    rt(90)
    down()
    fd(1000)
    fd(-2000)   


maxa=f(Ip)
for i in range(0,1000):
    if f(Im+i*(Ip-Im)/1000) > maxa :
        maxa=f(Im+i*(Ip-Im)/1000)

mina=f(Im)
for i in range(1,1001):
    if f(Im+i*(Ip-Im)/1000) < mina :
        mina=f(Im+i*(Ip-Im)/1000)

axe()

up()
goto(-1400*(Ip+Im)/(2*(abs(Ip)+abs(Im)))-90,-350+10)
down()
write(mina)
up()
goto(-1400*(Ip+Im)/(2*(abs(Ip)+abs(Im)))-90,350)
down()
write(maxa)
up()
goto(-700+5,-700*(maxa+mina)/(2*(abs(maxa)+abs(mina)))-15)
down()
write(Im)
up()
goto(700,-700*(maxa+mina)/(2*(abs(maxa)+abs(mina)))-15)
down()
write(Ip)
up()
color('blue')
for i in range(0,1400):
    goto(-700+i,-350+(f(Im+(i+1)*(Ip-Im)/1400)-mina)*(700/(maxa-mina)))
    down()
color('black')
up()



   
############################
## Méthode des Réctangles ##
############################

##p=10
##pt=p

s=0
for i in range(0,pt-1):
    x1=Im+(Ip-Im)*i/(pt-1)
    x2=Im+(Ip-Im)*(i+1)/(pt-1)
    y1=f(Im+(Ip-Im)*i/(pt-1))
    a=y1
    s+=a*x2-a*x1

    #tt
    x_1=(x1-Im)*(1400/(Ip-Im))
    x_2=(x_1-Im)*(1400/(Ip-Im))
    y_1=(y1-mina)*(700/(maxa-mina))
    aa=y_1
    up()
    for j in range(int(1400*i/(pt-1)),int(1400*(i+1)/(pt-1))):
        goto(-700+j,-350+aa)
        down()
    goto(-700+j,-700*(maxa+mina)/(2*(abs(maxa)+abs(mina))))
    goto(-700+j,-350+(f(Im+j*(Ip-Im)/1400)-mina)*(700/(maxa-mina)))

print("rectangle : ",s)


##########################
## Méthode des Trapèzes ##
##########################

##p=10
##pt=p+1

s=0
for i in range(0,pt-1):
    x1=Im+(Ip-Im)*i/(pt-1)
    x2=Im+(Ip-Im)*(i+1)/(pt-1)
    y1=f(Im+(Ip-Im)*i/(pt-1))
    y2=f(Im+(Ip-Im)*(i+1)/(pt-1))
    a=(y1-y2)/(x1-x2)
    b=(x1*y2-x2*y1)/(x1-x2)
    s+=(a*x2**2)/2+b*x2-((a*x1**2)/2+b*x1)

    #tt
    x_1=(x1-Im)*(1400/(Ip-Im))
    x_2=(x2-Im)*(1400/(Ip-Im))
    y_1=(y1-mina)*(700/(maxa-mina))
    y_2=(y2-mina)*(700/(maxa-mina))
    aa=(y_1-y_2)/(x_1-x_2)
    bb=(x_1*y_2-x_2*y_1)/(x_1-x_2)
    up()

    for j in range(int(1400*i/(pt-1)),int(1400*(i+1)/(pt-1))):
        goto(-700+j,-350+aa*j+bb)
        down()

print("Trapèze : ",s)


########################
## Méthode de Simpson ##
########################

##p=3
##pt=2*p+1

s=0
for i in range(0,pt-2,2):
    x1=Im+(Ip-Im)*i/(pt-1)
    x2=Im+(Ip-Im)*(i+1)/(pt-1)
    x3=Im+(Ip-Im)*(i+2)/(pt-1)
    y1=f(Im+(Ip-Im)*i/(pt-1))
    y2=f(Im+(Ip-Im)*(i+1)/(pt-1))
    y3=f(Im+(Ip-Im)*(i+2)/(pt-1))
    a=(-(x1*(y2-y3)-x2*(y1-y3)+x3*(y1-y2)))/((x1**2-x1*(x2+x3)+x2*x3)*(x2-x3))
    b=(x1**2*(y2-y3)-x2**2*(y1-y3)+x3**2*(y1-y2))/((x1**2-x1*(x2+x3)+x2*x3)*(x2-x3))
    c=(x1**2*(x2*y3-x3*y2)-x1*(x2**2*y3-x3**2*y2)+x2*(x2-x3)*x3*y1)/((x1**2-x1*(x2+x3)+x2*x3)*(x2-x3))
    s+=(a*x3**3)/3 + (b*x3**2)/2 + c*x3 -((a*x1**3)/3 + (b*x1**2)/2 + c*x1)

    #tt
    x_1=(x1-Im)*(1400/(Ip-Im))
    x_2=(x2-Im)*(1400/(Ip-Im))
    x_3=(x3-Im)*(1400/(Ip-Im))
    y_1=(y1-mina)*(700/(maxa-mina))
    y_2=(y2-mina)*(700/(maxa-mina))
    y_3=(y3-mina)*(700/(maxa-mina))
    aa=(-(x_1*(y_2-y_3)-x_2*(y_1-y_3)+x_3*(y_1-y_2)))/((x_1**2-x_1*(x_2+x_3)+x_2*x_3)*(x_2-x_3))
    bb=(x_1**2*(y_2-y_3)-x_2**2*(y_1-y_3)+x_3**2*(y_1-y_2))/((x_1**2-x_1*(x_2+x_3)+x_2*x_3)*(x_2-x_3))
    cc=(x_1**2*(x_2*y_3-x_3*y_2)-x_1*(x_2**2*y_3-x_3**2*y_2)+x_2*(x_2-x_3)*x_3*y_1)/((x_1**2-x_1*(x_2+x_3)+x_2*x_3)*(x_2-x_3))
    up()
    for j in range(int(1400*i/(pt-1)),int(1400*(i+2)/(pt-1))):
        goto(-700+j,-350+aa*j**2+bb*j+cc)
        down()
## tt

print("Simpson : ",s)


############################
## Méthode de Monte Carlo ##
############################

pt=10000
tracer(pt)
c=0
for i in range(0,pt):
    color('green')
    a=uniform(Im,Ip)
    b=uniform(mina,maxa)
    up()
    goto(-700+(a-Im)*1400/(Ip-Im),-350+(b-mina)*700/(maxa-mina))
    down()
    if f(a)>b and b>0:
        color('red')
        c+=1
    if f(a)<b and b<0:
        color('red')
        c-=1
    dot(3)

if mina>0:
    print("Monte Carlo : ",(Ip-Im)*(maxa-mina)*(c/pt)+mina*(Ip-Im))
elif maxa<0:
    print("Monte Carlo : ",(Ip-Im)*(maxa-mina)*(c/pt)+maxa*(Ip-Im))
else:
    print("Monte Carlo : ",(Ip-Im)*(maxa-mina)*(c/pt))

#18 Re : Café mathématique » Escargot d'Ulam » 03-12-2016 17:22:49

Si j'ai bien compris, dans un repère orthonormé, on avance suivant les x positifs puis des qu'on rencontre un premier, on continu vers les y positifs puis au prochain premier vers les x négatifs puis les y négatifs et ainsi de suite jusqu'à que l'eau bout.

#19 Re : Programmation » Installer Numpy » 02-12-2016 23:33:55

Re,

Merci pour l’intérêt que tu porte à mon problème :)
Alors j'ai python 3.5  32 bit
Windows 10 (64 bit)

J'aimerais faire des programmes à propos du calcul numérique / interpolation, cette année en binôme on doit donner un cours sur ca, je crois qu'au final on va devoir parler des courbes brachistochrone ou tautochrone ou quelque chose dans le genre.

Tu penses que c'est quel module qui serait le plus adapté pour étudier ca numériquement ?

#20 Programmation » Installer Numpy » 02-12-2016 19:22:11

Terces
Réponses : 13

Bonsoir/bonjour

J'aimerais tracer des courbes sur python, j'ai cru comprendre qu'il fallait installer Numpy.
En fait c'est pas aussi simple que d'installer un simple programme :(
J'ai cru comprendre qu'une "bonne solution" était d'installer pip pour ensuite simplement faire "pip install numpy" dans l'interface python.
Mais même pip, je n'y suis pas arrivé, je suis allé sur ce lien : https://pypi.python.org/pypi/pip#downloads
mais quand ca ne marche pas, quand je clic sur "download" ca descend juste la page et puis je ne sais plus quoi faire.

Vous souvenez vous de comment vous avez fait ?

#21 Re : Programmation » Recherche des nombres presque entiers de la forme e^{pi*sqrt{n}} » 02-12-2016 17:54:53

Bonjour,

Pourquoi cherche ton ces nombres presque entiers sous cette forme et non sous une autre ?

#22 Re : Enigmes, casse-têtes, curiosités et autres bizarreries » Centre de masse du carré. » 28-11-2016 19:34:22

Re,

oui ca fonctionne même si je ne pensais pas à lui.
comment tu as fait pour trouver une solution ?

#23 Re : Enigmes, casse-têtes, curiosités et autres bizarreries » Centre de masse du carré. » 27-11-2016 14:49:15

Mince j'avais oublié une parenthèse sur ma calculette, le centre est en :
(47/30,25/18) désolé.

#24 Re : Enigmes, casse-têtes, curiosités et autres bizarreries » Centre de masse du carré. » 27-11-2016 14:09:46

Oui il y est "collé" : ses sommets ont pour coordonnées (0,0) , (0,3) , (3,0) , (3,3).
Pourquoi je ne devrais pas être embarrassé par le nombre de solutions possibles ?

#25 Enigmes, casse-têtes, curiosités et autres bizarreries » Centre de masse du carré. » 26-11-2016 21:18:23

Terces
Réponses : 7

Bonjour,

Alors, je me pose plusieurs question à propos d'un problème que j'ai imaginé :
On a un carré(3*3) composé de 9 petits carré(1*1) de masses surfaciques 1,2,3,4,5,6,7,8,9.
Le centre de masse du grand carré est (47/30,49/45 25/18)
Donnez un exemple qui a ce centre de masse.


Ce qui me gène : il y a 9!=362880 combinaisons de carré différent mais je trouves moins de 29241 centres de masses possibles donc il ne semble pas y avoir unicité de la solution(même si je n'en suis pas du tout convaincu en pratique). J'aimerais bien trouver des masses surfaciques telles qu'il y ai une seule solution. J'aimerais bien également savoir résoudre ce problème.

Pied de page des forums