Algorithmique: les suites

Discussion sur l'enseignement de l'algorithmique avec Xcas au lycee
Lea74
Messages : 1
Inscription : mar. mai 01, 2012 12:31 pm

Algorithmique: les suites

Message par Lea74 » mar. mai 01, 2012 1:22 pm

Bonjour,
Je suis en première S et j'ai un devoir d'algorithmique sur les suites que je n'arrive pas à résoudre en entier...

Ex1
On considère l'algorithme ci-dessous
k:=0
U:=10
Tant que U<=100
k:=k+1
U:=U+2k-1
Fin tant que
Afficher k

Je dois répondre à des question:
1) La variable U représente le terme de suite (Un). Expliciter la suite (Un).
Ma réponse: U0=1O
Un+1=Un+2x(n+1)-1

2) Quel est le sens de variation de la suite (Un)?
Ma rep: (Un+1)-(Un)= 2n+1

Or n>0 donc 2n+1>0
Donc Un+1>Un
La suite est croissante.

3) Que représente pour la suite le nombre k affiché en fin de programme?

4) Ecrire l'algorithme modifié permettant d'obtenir la plus petite valeur k telle que le terme de rang k soit strictement supérieur à 10000.

5) Que peut-on conjecturer pour le comportement de la suite à l'infini?

Je ne parviens pas à répondre aux dernières questions, pourriez vous m'aider s'il vous plait?

Ex 2 : écrire deux algorithmes différents, (l'un avec une boucle pour et l'autre sans) permettant de calculer la somme
S=1+2+3+...+n
où n est saisi par l'utilisateur.

Rep:
Pour mon premier algorithme avec la boucle, j'ai écrit:
saisir n
pour k de 1 jusque n faire
S:=S+k
finpour
afficher S

Pour le deuxième sans boucle, je pensais à ça:
saisir n
S prend la valeur n(n+1)/2
afficher S.

Pourriez vous me dire si cela vous semble correct?
Merci d'avance pour votre aide!


Léa74.

alb
Messages : 1320
Inscription : ven. août 28, 2009 3:34 pm

Re: Algorithmique: les suites

Message par alb » mar. mai 01, 2012 3:03 pm

Pour les questions 3 4 5 je te propose un programme que tu peux tester sur Xcas
et qui doit te permettre de répondre aux 3 questions:

Code : Tout sélectionner

PlusPetitEntier():={ // renvoie le plus petit entier k tel que U(k)>100
  local k,U;
  k:=0;
  U:=10;
  tantque U<=100 faire
    k:=k+1;
    U:=U+2k-1;
    afficher("U("+k+")"=U);
  ftantque
  retourne k
}
Pour l'ex2 ne pas oublier d'initialiser S à 0
Un algorithme sans boucle pour afin de calculer cette somme ?
Ta proposition semble être ce qui est attendu
Ou alors un tant que ? Propose les deux !
Ou si tu as déjà vu quelque chose qui ressemble à ceci (ici en langage Xcas) :
S(n):=si n==1 alors 1 sinon S(n-1)+n fsi
tu peux le traduire à ta façon

alain974
Messages : 104
Inscription : lun. mai 24, 2010 11:15 am

Re: Algorithmique: les suites

Message par alain974 » mar. mai 01, 2012 5:21 pm

alb a écrit :Un algorithme sans boucle pour afin de calculer cette somme ?
Ta proposition semble être ce qui est attendu

Sans doute mais on peut aussi faire

Code : Tout sélectionner

sum(k,k,1,n)
Mais certains esprits chagrins disent que c'est de la programmation et pas de l'algorithmique... :?

On peut même faire

Code : Tout sélectionner

S:=n->sum(k,k,1,n)
Après ça, pour que l'"utilisateur" puisse "saisir n", il suffit de faire quelque chose comme S(10) et c'est tout. :P

En fait cette méthode illustre le fait que

*Un algorithme c'est une fonction (n est l'antécédent, la valeur retournée est l'image)
*Une suite c'est une fonction de N dans R...
:idea:

Répondre