TD Boucles
Valeurs réelles d’une suite
Soit la suite u(n+1) = sqrt(u(n)-1)
étant donné un u0 tq 1<u0<1e10. afficher toutes les valeurs réelles de
cette suite.
suites adjacentes
Etant donné 2 suites suivantes:
u(n+1) = sqrt(u(n)*v(n+1))
v(n+1) = 2*u(n)*v(n) / (u(n)+v(n))
soit u1 et v1 2 réels saisis par l’utilisateur tel que: 0<u1<𝜋 et v1>𝜋.
Calculer u(n), v(n).
Triée?
l’utilisateur va saisir n entiers a1, a2,...,an.
Afficher “sorted” si la suite des ai vérifient : a1<a2 <...<an. Sinon afficher
“unsorted”
exemple:
a1,a2,a3,a4,a5=2,4,7,6,3 => unsorted
a1,a2,a3,a4,a5,a6=2,4,7,8,11,19 => sorted
chiffres
Etant donné un entier x, calculer la somme et le produit de ses chiffres.
Exemple:
x=1234 => s=10, p = 24
binaire de x
etant donné un entier x, afficher son binaire à l’envers
exemple:
x = 29 => b = 1 0 1 1 1
suite
soit u0, u1 deux réels > 0 donner par l’utilisateur.
la suite u(n) est définie tq: u(n+2) = sqrt( u(n+1)) + sqrt(u(n)).
Afficher la valeur de u(n) pour un n donné.
le nombre e
soit la suite u(n) = 1/0! + 1/1! +½! + ⅓! + … + 1/n!
calculer u(n) pour un n donné
calculer n pour que abs(u(n)-e)<1e-8
Nombre de séquences
soit une séquence de 5 entiers a1,a2,a3,...,an tq 1<=ai<=m. On veut diviser cette
séquence en un nombre minimal de sous-séquence de façon à ce que la somme des
valeurs dans chaque séquence soit <= m.
On ne peut pas changer l’ordre des “ai”.
Afficher le nombre de séquences.
Exemple:
a1,a2,a3,a4,a5 = 1,2,3,4,5
m=6
=> (1,2,3), (4), (5) donc 3
suite anonyme
Observer la liste des nombres entiers relatifs ci-dessous,
puis calculer un, sachant u0=3.
3 ; 8 ; −16 ; −11 ; 22 ; . . . ; . . . ; −49
Ligne d’un triangle 1
Afficher la nième ligne de ce triangle
exemple:
3eme ligne => 4, 5, 6
Ligne d’un triangle 2
Afficher la nième ligne de ce triangle
exemple:
3eme ligne => 5, 6, 7, 8, 9
Distinctes
Etant donné n entiers triés a1, a2, …,
an. Afficher le nombre des valeurs
différentes.
Exemple:
a1, a2, a3, a4, a5 = 0, 1, 1, 2, 2 => 3
a1, a2, a3, a4, a5 = 0, 0, 0, 0, 0 => 1
a1, a2, a3, a4, a5 = 0, 1, 2, 3, 4 => 5
fonction quasi-constante
Afficher E(9/10, 10)
Afficher E(1/3, 100)
Afficher E(1/10, 1000)
Missing Number
L’utilisateur va saisir n-1 entiers a1,a2,...,an-1 tous différents dans l’intervalle [1,n].
Trouver l’entier manquant.
exemple:
n=6
a1,a2,a3,a4,a5 = 1,2,4,5,6 => manquant = 3
Premiers
Afficher tous les premiers <= 1e6 qui s'écrivent sous forme a**n - 1.
a et n sont données par l’utilisateur.
fraction continue
Etant donné les valeurs de a1, a2, …, an, calculer fn.
fn =
PGCD
calculer le pgcd et ppcm de 2 entiers a et b.
exemple:
a, b = (12, 18) => pgcd=6, ppcm=36
Sequence Lukasi
soit a1,a2,a3,...,an, n entiers tq chaque ai appartient {-1,1}, la séquence (a1, a2, a3, …
an) est dite de Lukasi si
. Sigma i=1..k(ai)>=0 pour 1<=k<=n
. Sigma i=1..n(ai)=-1.
Afficher ‘LUKASI’ si la séquence est de Lukasi sinon ‘ISAKUL’.
Plantes
Deux plantes grandissent en longueur chaque jour.
A: double sa longueur
B: triple sa longueur
initialement, on a A>B.
Dans combien de jours le la plante B depasse A en longueur.
Exemple:
A, B = 2, 1 => j=2
exponentiation rapide
etant donné deux entiers a et n, on veut calculer a**n en utilisant la méthode
suivante:
exponentiation rapide
etant donné deux entiers a et n, on veut calculer a**n en utilisant la méthode
suivante:
Produit maximal
On dispose de n chiffres a1, a2, a3,...,an.
Quel est le produit maximal qu’on peut obtenir en ajoutant 1 à l’un de ces chiffres ?
Exemple :
2 2 1 2 1 1 => 16
0 1 2 0 1 3 => 0
A Rook in the chess game
The rook is a piece in the game of chess. During
its turn, it may move any non-zero number of
squares horizontally or vertically. Your task is to
find all possible moves for a rook on an empty
chessboard.
Example:
r,c = 5, ‘d’ => d1 d2 b5 g5 h5 d3 e5 f5 d8 a5 d6
d7 c5 d4