Bonjour,
je souhaite finir mon DM mais il se termine par un exercice avec un algorithme..
Et je ne comprend vraiment pas !
SUJET:
Remarque préliminaire : avec Algobox la parité d'un nombre se teste en utilisant la fonction floor() qui donne de la partie entière un nombre (donc sans la partie décimale).
un exemple de n pair : n=6 donc n/2=3 donc floor(n/2)=3
un exemple de n impair : n=7 donc n/2=3.5 donc floor(n/2)=3
Donc "si floor(n/2)==n/2 alors ..." teste si n est pair
Voici un algorithme qui donne une série de nombres.
On choisit un premier nombre naturel non nul. S'il est pair, le suivant est la moitié de ce nombre. S'il est impaire, le suivant est le triple du premier auquel on additionne 1. On continue le processus.
a) Vérifier qu'avec n=6 on trouve les valeurs 6-3-10-5-16-8-4-2-1
b) Donner la liste des nombres avec comme premier nombre 35.
c) Pourquoi vaudrait-il mieux arrêter cet algorithme lorsque la valeur vaux 1.
d) Écrire un algorithme avec Algobox qui donne la liste des nombres, après avoir demandé le premier d'entre eux. Imprimer cet algorithme.
e) Comment pourrait-on prouver ce qui a été conjecturé ? (pour information, cette suite de nombres s'appelle suite de Syracuse)
Ce que j'ai fait :
a) Oui j'ai vérifier ( je ne vais pas le marquer )
b) 35-1O6-53-160-80-40-20-10-5-166-8-4-2-1
c) 1 est impaire, on au (1*3)+1=4, qui va donner 2 et qui redonne 1. Si l'on arrête pas l'algorithme a 1, ceci ce reproduit indéfiniment.
d) et la j'arrive pas a avancé malgré plusieurs tentative, je n'arrive pas a faire cette algorithme.
Quelqu'un pourrait m'aider ?
bonjour,
voir :
1 VARIABLES
2 u EST_DU_TYPE NOMBRE
3 DEBUT_ALGORITHME
4 LIRE u
5 AFFICHER u
6 AFFICHER " "
7 TANT_QUE (u!=1) FAIRE
8 DEBUT_TANT_QUE
9 SI (u%2 ==0) ALORS
10 DEBUT_SI
11 u PREND_LA_VALEUR u/2
12 FIN_SI
13 SINON
14 DEBUT_SINON
15 u PREND_LA_VALEUR 3*u + 1
16 FIN_SINON
17 AFFICHER " "
18 AFFICHER u
19 FIN_TANT_QUE
20 FIN_ALGORITHME
RÉSULTATS :
***Algorithme lancé***
Entrer u : 35
35 106 53 160 80 40 20 10 5 16 8 4 2 1
***Algorithme terminé***
Vous devez être membre accéder à ce service...
Pas encore inscrit ?
1 compte par personne, multi-compte interdit !
Ou identifiez-vous :