Programmez le en maple, `a l’aide d’une boucle while.
3.3 S´equences
En plus des entiers, des proc´edures ou des flottants, Maple a un type int´egr´e appel´e s´equence.
Il sert `a regrouper des objets dans une sorte de liste. Par exemple 1,2,3,4 est une s´equence. Vous
pouvez acc´eder au ieme ´el´ement d’une s´equence `a l’aide de [i]. Par exemple : sequence :=0,1,2,3,4,5 ;
sequence[3] ;. Vous pouvez aussi mettre des s´equences bout `a bout, en faisant sequence1,sequence2
et les modifier `a l’aide de subs.
1. ´
Etudier comment fonctionne les fonctions seq,subs et nops
2. ´
Ecrire une instruction renvoyant une s´equence contenant les npremiers entiers pairs.
3. ´
Ecrire une proc´edure prenant une s´equence en param`etre et renvoyant son plus grand
´el´ement.
4. ´
Ecrire une proc´edure prenant une s´equence en param`etre et renvoyant la somme de ses
´el´ements.
5. ´
Ecrire `a nouveau la proc´edure du 2.1.1 avec les r´eponses aux questions pr´ec´edentes.
3.4 Suite de Syracuse
Par d´efinition, la suite de Syracuse est :
u0un entier strictement positif
un+1 = 3un+ 1 si unest impair
un+1 =un
2si unest pair
1. ´
Ecrire une fonction fprenant en argument unet renvoyant un+1
2. Tester la fonction fen calculant les 4 premiers termes de la suite d´efinie par u0= 4.
3. Que se passe-t-il si `a un moment un= 1 ?
4. On appelle orbite d’un entier positif u0la s´equence form´ee par u0, u1, ..., unavec nle premier
indice pour lequel un= 1. ´
Ecrire une proc´edure prenant u0et donnant son orbite.
5. Il n’est pas ´evident que cette fonction termine, c’est en fait encore un probl`eme ouvert. ´
Ecrire
une proc´edure qui prend en param`etre net v´erifie pour u0∈[1..n] calcule la taille maximale
des orbites (utilisez la fonction nops).
6. ´
Ecrire une proc´edure effectuant le trac´e d’un orbite en joignant les points (k, uk). Utiliser
les fonctions plot et seq.
4