Inscription / Connexion Nouveau Sujet
Niveau terminale
Partager :

algorithme

Posté par
Emeline26
13-09-15 à 15:41

Bonjour, j'ai un exercice a faire mais je n'en ai jamais fais des similaires alors j'ai essayer de le résoudre mais je doute de mes resultats. merci d'avance

ex:
n = à 3 chiffres
on met ses chiffres dans l'ordre > , ce qui donne x
on met ses chiffres dans l'ordre <, ce qui donne y
on calcule x-y

je dois ecrire un algorithme. j'ai fais:
variables: a,b,c= 3 chiffres
n= à 3 chiffres formé avec a,b et c
x et y= nombres réels
u= un nombre réel
traitement:
saisir n
x prend la valeur c ba
y prend la valeur abc
faire U = x-y
afficher U

ensuite je dois faire une conjecture sur un diviseur commun aux resultats:
j'ai trouvé que tous les résulats était divisible par 3 puisque quand on additionne a b et c on obtient un multiple de 3 mais je n'arrive pas a le demontrer :S

Posté par
Glapion Moderateur
re : algorithme 13-09-15 à 15:44

x prend la valeur c ba ça ne veut rien dire. ni algobox, ni une calculatrice ne comprendra cette instruction.
il faut que tu fasses des tests Si c < a alors ....

Posté par
Emeline26
maths 13-09-15 à 16:06

je me disais bien que c'etait trop facile pour etre ca
Si c < a alors... d'accord mais j'en fais quoi de b ?
je suis complétement perdu la

Posté par
Glapion Moderateur
re : algorithme 13-09-15 à 16:25

Commence par Réfléchir à un algorithme qui a partir de 3 nombres a;b;c les mets dans l'ordre croissant.

comment ferais-tu si je te donne 8 ; 4 ; 12 et que tu dois les donner dans un ordre croissant ?

(la trame c'est "si b > a je fais rien, sinon je les intervertis" je fais pareil avec b et c et je recommence une dernière fois avec a et b (car si j'ai intervertis b et c, c est peut-être plus grand que a)

Posté par
Emeline26
maths 13-09-15 à 17:01

d'accord j'ai compris ! merci

si b > a alors je ne fais rien, sinon je les intervertis
si c > b alors je ne fais rien, sinon je les intervertis
si a < b alors je ne fais rien, sinon je les intervertis  

ensuite il faut afficher x donc une il me faut une phrase comme: x prend la valeur abc

si b < a alors je ne fais rien, sinon je les intervertis
si c < b alors je ne fais rien, sinon je les intervertis
si a > b alors je ne fais rien, sinon je les intervertis

y prend la valeur abc (la je pense que mes phrases sont fausses car on pourrait croire que l'ordre des chiffres a b c n'a pas change non ? )

Faire U = x-y (j'ai le droit d'inventer une lettre u ? car elle n'etait pas donnée dans l'énoncée...)
Afficher U

Posté par
Glapion Moderateur
re : algorithme 13-09-15 à 17:13

oui mais il ne fait pas écrire "alors je ne fais rien, sinon je les intervertis" il faut vraiment le faire

Si b < a alors
debut si
k = a
a = b
b = k
fin si

voilà ça, ça intervertit vraiment a et b

sinon une fois trié, il faut vraiment calculer x et y, x = 100a+10b+c et y = 100c+10b+a
(y prend la valeur abc ça veut rien dire)

Posté par
Emeline26
maths 13-09-15 à 17:44

ah d'accord des qu'on change les phrases en lettres je suis perdu ...
pourquoi choisit on "Si b<a alors"... et k c'est quoi ? :S

apres x et y j'ai compris

Posté par
Emeline26
maths 13-09-15 à 21:12

ah je vois ;

Si b < a alors
  debut si
   k = a
   a = b
   b = k
  fin si

Si c < b alors
debut si
k = b
b = c
c = k
fin si

Si a > b alors
debut si
k = b
b = a
a = k
fin si

x prend la valeur 100a+10b+c
?

je fais pareil pour decroissant ? :

Si b > a alors
debut si
k = a
a = b
b = k
fin si

Si c > b alors
debut si
k = b
b = c
c = k
fin si

Si a < b alors
debut si
k = b
b = a
a = k
fin si

y prend la valeur 100c+10b+a   : ici je ne comprend pas car quand j'essaye avec les chiffres a=7 , b=1 et c=5 à la fin j'obtiens a=7, b=5 et c=1 donc y= 751
mais avec cette formule j'obtient: 157 Donc on ne devrait pas ecrire: y= 100a+10b+c ??

Faire x-y
Afficher le résultat

Posté par
Glapion Moderateur
re : algorithme 13-09-15 à 22:38

non pas la peine de faire pareil pour décroissant, tu sais que si a;b;c est croissant alors c;b;a est décroissant.

a=7 , b=1 et c=5 va donner 1;5;7 une fois trié croissant et x = 100a+10b+c donne bien 157
et y = 100c+10b+a donne bien 751

Posté par
Emeline26
maths 14-09-15 à 09:09

ah mais oui je suis bete !

ensuite pour le diviseur commun comme je disais j'ai pensé à 3, cependant je ne vois pas comment le demontrer. Au début j'etais parti sur un truc du genre: l'addition de 3 chiffres compris entre 0-9 est divisible par 3... mais je n'ai rien pour le prouver

Posté par
Glapion Moderateur
re : algorithme 14-09-15 à 10:11

x-y = 100a+10b+c-(100c+10b+a)= 99(a-c)

Posté par
Emeline26
maths 14-09-15 à 19:23

99(a-c)
= 9 * 11 (a-c)
donc le résultat sera un multiple de 11 ?

Posté par
Glapion Moderateur
re : algorithme 14-09-15 à 19:31

un multiple de 9, un multiple de 11, un multiple de 99

Posté par
Emeline26
maths 14-09-15 à 19:41

je vais juste dire que c'est un multiple de 99 car on m'en demande que un

merci beaucoup d'avoir pris le temps de tous m'expliquer !



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 1742 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 !