Inscription / Connexion Nouveau Sujet
Niveau première
Partager :

Algorithme

Posté par
Mathy
12-11-14 à 20:19

Bonjour, j'ai un problème sur Algobox.
Je dois faire un algorithme, assez simple joint ci-dessous. Il me demande de calculer U(>1). Quand U est pair, il prend la valeur U/2 et quand U impair, il prend la valeur 3U+1.
Cependant quand j'essaye avec U=7, je trouve avec algobox 221134175226134020105168421 au lieu de 3*7+1, soit 22!
Merci de vos réponses.

Algorithme

Posté par
Mathy
Algorithme 12-11-14 à 20:23

Je joint ci dessous la capture d'écran de mon résultat:

Algorithme

Posté par
mathafou Moderateur
re : Algorithme 12-11-14 à 20:32

Bonjour,

tu n'obtiens pas du tout ce nombre astronomique là mais bien 22 !!

puis la boucle continue : puisque 22 est pair, il le divise par 2 ce qui donne 11
puis 11 impair il obtient 34 etc

et c'est vrai, il sort bien 22, 11, 34, etc sans aucun espace ni saut de ligne entre les résultats
jusqu'au 8, 4, 2, 1 final

si tu veux mettre chaque résultat sur une ligne différente, il faut le dire à Algobox :
il y a une case à cocher pour ça dans les "AFFICHER", en mode éditeur il faut écrire AFFICHER*

Posté par
plumemeteore
re : Algorithme 12-11-14 à 20:49

Bonjour Mathy.
Il faut peut-être calculer la structure SI sur celle des langages usuels.

En Visual Basic :
If Mod(u,2) = 0 Then
u = u/2
Else
u = 3*u+1
End If

En Algobox, cela deviendrait ;
SI (U%2 == 0) ALORS
U PREND LA VALEUR U/2
SINON
U PREND LA VALEUR 3*U+1
FIN SI

Le programme devrait afficher successivement 22 11 34 17 52 26 13 40 20 10 5 16 8 4 2 1.

Quel que soit le U de départ, il semble qu'on aboutisse toujours à 1, après un chemin plus ou moins long. Voir Conjecture de Syracuse dans Wikipédia.

Posté par
mathafou Moderateur
re : Algorithme 12-11-14 à 20:58

Bonjour plumemeteore,

le seul bug est le problème d'affichage sans saut de ligne
la structure et tout le reste de l'algorithme est correct

avec Algobox, la structure est générée correctement de façon automatique dès qu'on lui demande d'insérer un SI avec SINON (case à cocher pour le "avec SINON")
un truc de faineants cet Algobox ...

(oui, la conjecture de Syracuse fait les beaux jours des programmeurs en herbe)

Posté par
Mathy
Algorithme 12-11-14 à 20:59

Ah oui attendez....

Posté par
Mathy
Algorithme 12-11-14 à 21:01

Super j'ai réussi merci à vous!



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 !