Inscription / Connexion Nouveau Sujet
Niveau première
Partager :

Algorithme

Posté par
Datt
08-12-12 à 11:55

Bonjour, j'ai un algorithme a réaliser mais je n'y arrive pas du tout.
Voici mon énoncé :

On connait les coordonnées des vecteur u, v et w dans une base (i;j). En supposant que (u:v) forme une base, il s'agit de trouver les réels k et m tels que : w=ku+mv.

Merci.

Posté par
Datt
+ 08-12-12 à 11:56

J'ai oublier la question, écrire en language naturel, un algorithme permettant de déterminer les réel k et m.

Posté par
mathafou Moderateur
re : Algorithme 08-12-12 à 12:38

Bonjour,

c'est comme d'habitude, il s'agit déja de résoudre le problème de vecteurs avant d'écrire quelque algorithme que ce soit.
As tu une idée sur comment obtenir les coordonnées de dans la nouvelle base (,) ?

réponse : il s'agit de résoudre un système de deux équations en m et n.
écris donc ce système, puis résous le.

Posté par
Datt
re : Algorithme 08-12-12 à 13:18

Oui j'ai trouver le système :
a=kx+mx'
b=ky+my

Ce qui donne

m=ay-bx/y'-'y
k= -y'ay-ybx-b/x²yxy'

Je ne sais pas du tout si c'est sa. Mais ce qui bloque c'est de faire l'algorithme avec les tant que et if ..

Posté par
Datt
re : Algorithme 08-12-12 à 13:21

K = a - (Mx') / x
a-(kx)/x'= M

Après avoir refait les calculs je trouve sa.

dans mon poste d'avant c'étais m=ay-bx/yx'-x'y
                               k=-y'ay-ybx-b/x²-yxy'

Posté par
mathafou Moderateur
re : Algorithme 08-12-12 à 13:41

Déja il doit y avoir une petite erreur dans ta résolution

en partant je suppose de =(x; y), =(x'; y') et = (a; b)
on a bien le système :
a=kx+mx'
b=ky+my' (faute de frappe : y')
mais sa solution n'est pas " tout à fait ça"

il est clair que l'expression au dénominateur doit être pour les deux une expression nulle ssi et colinéaires
donc au dénominateur, les deux doivent être xy' - x'y ou son opposé.

le plus simple pour résoudre ce système est par combinaison linéaire.

a = kx + mx' [1]
b = ky + my' [2]
en multipliant les deux membres de [1] par y' et les deux membres de [2] par -x' en en ajoutant, les termes en m s'éliminent et on obtient k

de même en multipliant [1] par -y et [2] par x, on obtient m

je te laisse corriger tes formules.

quant à l'algorithme, il est "direct", pas besoin de quelque boucle "tant que" ou autre que ce soit !!
il est juste "préférable" de faire un simple test sur la valeur de xy' - x'y (sinon on risque d'avoir une division par 0 !)
en appelant xu, yu et xv, yv les coordonnées de u et v (les apostrophes n'étant "pas très bien vues" comme noms de variables) :

si xu*yv - xv*yu == 0 faire
afficher "u et v colinéaires"
sinon
calculer k et m par les formules ci dessus
afficher k et m
fin si

et c'est tout ce qu'il y a dans cet algorithme !!
(avec la chair de déclaration des variables et d'entrées des valeurs)

Posté par
Datt
re : Algorithme 08-12-12 à 14:40

Donc sa fait :
k=xy'-x'y
m=-x'y+xy'
C'est sa ?

Posté par
mathafou Moderateur
re : Algorithme 08-12-12 à 14:46

???????
non.

a = kx + mx' [1]
b = ky + my' [2]

ay' = kxy' + mx'y' [1] multipliée par y'
-bx' = -kyx' - my'x' [2] multipliée par -x'
ay'-bx' = k(xy' - x'y) somme des deux, le terme en m est m(x'y' - x'y') = 0

k = ...

et pareil pour l'autre.

Posté par
Datt
re : Algorithme 08-12-12 à 15:05

K=ax-by
M=ax'-by'
?

Posté par
mathafou Moderateur
re : Algorithme 08-12-12 à 15:19

?????????????
ay'-bx' = k(xy' - x'y)

k = (ay'-bx')/(xy' - x'y) !!!!

Posté par
Datt
re : Algorithme 08-12-12 à 15:31

Ah oui pardon !
Donc m=(ay'-bx')/(x'y'-x'y')

Posté par
mathafou Moderateur
re : Algorithme 08-12-12 à 15:56

Non ! "et pareil" ça veut dire : et faire des calculs semblables, de résultat différent !!

le numérateur est différent, et comme déja signalé le dénominateur est forcément le même pour k et m !!!

Ce dénominateur lorsqu'il est nul signifie que et sont colinéaires (et donc qu'il est impossible de trouver k et m car et ne forment pas une base)

Posté par
Datt
re : Algorithme 08-12-12 à 16:21

-ya = -ykx - ymx'
by=ky²+my'y

donc m=(-y'ay - ybx - by²)/(x'y - xy')

Posté par
mathafou Moderateur
re : Algorithme 08-12-12 à 16:42

rien compris à ta salade.

a = kx + mx' [1]
b = ky + my' [2]

-ay = -kxy - mx'y [1] multipliée par -y
bx = kyx + my'x [2] multipliée par x
bx - ay = m(xy' - x'y) somme des deux, le terme en k est k(xy - xy) = 0
et donc m = (...)/(...) (sans écrire d'aneries, niveau 4ème !)

Posté par
Datt
re : Algorithme 08-12-12 à 17:26

M=(bx-ay)/(xy'-x'y)

Posté par
mathafou Moderateur
re : Algorithme 08-12-12 à 17:39

Voila.

la partie "mathématique" est faite :
étant données les coordonnées de (x; y), de (x'; y') et de (a; b) dans la base ,
les coordonnées de dasn la base , sont (m; k)
k = (ay' - bx')/(xy' - x'y) et
m = (bx - ay)/(xy' - x'y)

l'algorithme est alors "directement" comme indiqué précédemment la simple traduction de ces formules (ce n'est "même pas" un "algorithme", c'est la traduction d'un simple calcul !!)
Assortie du test de la valeur de xy' - x'y pour éviter de sortir salement une erreur "division par 0" si jamais les valeurs entrées sont avec et colinéaires.
et les "primes" étant à remplacer par des lettres dans les noms de variables :
xu, yu, xv, yv, xw, yw au lieu de x,y,x',y',a,b pour être cohérent jusqu'au bout.

Posté par
mathafou Moderateur
re : Algorithme 08-12-12 à 17:40

(k; m) bien sûr.

Posté par
Datt
re : Algorithme 08-12-12 à 19:29

D'accord je n'est pas trop le temps ce soir, demain je ferais l'algorithme et je vous le ferais parvenir

Posté par
Datt
re : Algorithme 08-12-12 à 19:38

J'oubliais le plus important : Merci



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

Inscription gratuite

Fiches en rapport

parmi 1741 fiches de maths

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 !