• Aucun résultat trouvé

4 Suite de Syracuse

N/A
N/A
Protected

Academic year: 2022

Partager "4 Suite de Syracuse"

Copied!
2
0
0

Texte intégral

(1)

Programmation pour le calcul scientifique Ann´ee : 2018-2019

Formation : L3 Ing´enieurie Math´ematique

TP1 : Rappels

1 Rappel : entr´ ees/sorties

Pour afficher une variable `a l’´ecran, on utilise la commande cout: cout << variable_a_afficher << endl;

Pour lire des donn´ees rentr´ees par l’utilisateur au clavier, on utilise la commandecin:

cin >> variable_a_lire;

Dans les deux cas, il faut pr´eciser au d´ebut du programme qu’on inclut la biblioth`equeiostream:

#include <iostream>

2 Calcul des termes d’une suite

On d´efinit la suite (un) par

u1= 1;u2= 3, un= 1 un−2

+un−1

Ecrire un programme qui, au choix de l’utilisateur :

— calcule la somme desnpremiers termes de la suite (ndonn´e par l’utilisateur),

— calcule le produit desnpremiers termes de la suite (ndonn´e par l’utilisateur),

— affiche les npremiers termes de la suite (ndonn´e par l’utilisateur),

3 Racines d’un polynˆ ome de degr´ e deux

Ecrire un programme qui prend en entr´ee trois valeursa,betcet affiche le(s) solutions(s) si elles existent de l’´equation

a·x2+b·x+c= 0.

4 Suite de Syracuse

Soit φ : N → N l’application telle que φ(n) = n2 si n est pair et φ(n) = 3n+ 1 si n est impair. On appelle suite de Syracuse toute suite (sn)n∈N d´efinie par son premier terme s0 ∈N et par la relation

∀n∈N,sn+1=φ(sn).

La conjecture de Syracuse postule que (sn)n∈N finit toujours par atteindre la valeur 1 et r´ep`ete le motif 1, 4, 2, 1, 4, 2. . .. En d´epit de la simplicit´e de son ´enonc´e, cette conjecture n’a pas encore ´et´e prouv´ee.

Ecrire un programme qui lit la valeur des0rentr´ee au clavier par l’utilisateur, calcule et affiche `a l’´ecran les termes successifs de la suite de Syracuse, jusqu’`a atteindre la valeur 1. Ce programme devra utiliser la commandeswitch.

1

(2)

5 Op´ erations sur des matrices creuses

SoitA une matrice quelconque, mais qui contient de nombreux ´el´ements nuls, par exemple une matrice tridiagonale. On d´ecide de stocker uniquement les ´el´ements non nuls deAavec ce qu’on appelle un stockage creux. Le but de l’exercice est d’effectuer des op´erations surAen utilisant uniquement ce stockage creux.

1. Cr´eez une structure qui contient un entiern, et trois tableaux (en utilisant la classevector) res- pectivement appel´esligne, compos´e d’entiers,colonne, compos´e d’entiers, etvaleur, compos´e de r´eels. Ces trois tableaux repr´esentent respectivement les indices des lignes, les indices des colonnes, et les valeurs des ´el´ements non-nuls d’une matrice.

2. Ecrire un programme qui calcule la trace de la matrice ainsi repr´esent´ee, en utilisant uniquement les tableauxligne,colonne, etvaleur.

3. Ecrire un programme permettant de calculer la norme infinie de la matrice, en utilisant uniquement les tableauxligne,colonne, etvaleur.

4. Ecrire un programme permettant de faire le produit de la matrice par un vecteurx(de la classe vector), en utilisant uniquement les tableaux ligne, colonne, et valeur. Un conseil : ´ecrire la formule sur un papier avant pour avoir les id´ees claires !

5. Ecrire un programme permettant, `a l’aide des fonctions ainsi ´ecrites, d’appliquer l’algorithme de la puissance it´er´ee.

2

Références

Documents relatifs

Ecrire l'algorithme d'une fonction qui convertit un nombre binaire, figurant dans un tableau de caractères sous forme ASCII, en un nombre entier qui sera retourné.

- Dans le texte, on peut souvent trouver des indices qui donnent des pistes pour une suite possible : les questions sur le texte sont là pour vous faire réfléchir aux éléments..

Ecrire un programme qui lit deux variables de type enti` ´ ere, les affiche, ´ echange leur contenu et les affiche de nouveau.. Exercice

L’ann´ ee courante sera mise dans une variable.. Exercice

Ecrire un programme qui lit deux variables de type enti` ´ ere, les affiche, ´ echange leur contenu et les affiche de nouveau.. Exercice

Ici la formule entrée en B3 dépend

Ecrire le code coffee similaire à cette classe javascript.. var Counter = function () { this.count

Ecrire une fonction f qui prend comme paramètre un entier n et retourne True si n’est parfait, et retourne False si n n’est