Feuille d'exercices 1. Prise en main. Ecrire un programme qui ache la phrase Bonjour le monde! à l'écran.



Documents pareils
Algorithmique et Programmation, IMA

Initiation à la programmation en Python

Feuille TD n 1 Exercices d algorithmique éléments de correction

Programmation C++ (débutant)/instructions for, while et do...while

1/24. I passer d un problème exprimé en français à la réalisation d un. I expressions arithmétiques. I structures de contrôle (tests, boucles)


Claude Delannoy. 3 e édition C++

Chap III : Les tableaux

Exercices types Algorithmique et simulation numérique Oral Mathématiques et algorithmique Banque PT

Rappel. Analyse de Données Structurées - Cours 12. Un langage avec des déclaration locales. Exemple d'un programme

TP 1. Prise en main du langage Python

Recherche dans un tableau

IN Cours 1. 1 Informatique, calculateurs. 2 Un premier programme en C

CORRECTION EXERCICES ALGORITHME 1

Introduction à la programmation Travaux pratiques: séance d introduction INFO0201-1

Les arbres binaires de recherche

Éléments d informatique Cours 3 La programmation structurée en langage C L instruction de contrôle if

Examen Médian - 1 heure 30

Cours de C++ François Laroussinie. 2 novembre Dept. d Informatique, ENS de Cachan

UEO11 COURS/TD 1. nombres entiers et réels codés en mémoire centrale. Caractères alphabétiques et caractères spéciaux.

Baccalauréat ES Polynésie (spécialité) 10 septembre 2014 Corrigé

1. Structure d'un programme FORTRAN 95

Introduction à MATLAB R

Cours d Algorithmique-Programmation 2 e partie (IAP2): programmation 24 octobre 2007impérative 1 / 44 et. structures de données simples

INITIATION AU LANGAGE C SUR PIC DE MICROSHIP

1 Recherche en table par balayage

TP, première séquence d exercices.

Compte-rendu de projet de Système de gestion de base de données

Cours Informatique Master STEP

Bases de programmation. Cours 5. Structurer les données

Travaux pratiques. Compression en codage de Huffman Organisation d un projet de programmation

MISE A NIVEAU INFORMATIQUE LANGAGE C - EXEMPLES DE PROGRAMMES. Université Paris Dauphine IUP Génie Mathématique et Informatique 2 ème année

Calcul matriciel. Définition 1 Une matrice de format (m,n) est un tableau rectangulaire de mn éléments, rangés en m lignes et n colonnes.

Algorithmique I. Algorithmique I p.1/??

TP n 2 Concepts de la programmation Objets Master 1 mention IL, semestre 2 Le type Abstrait Pile

Définitions. Numéro à préciser. (Durée : )

I. Introduction aux fonctions : les fonctions standards

Propagation sur réseau statique et dynamique

Présentation du langage et premières fonctions

1.6- Génération de nombres aléatoires

Cours d Algorithmique et de Langage C v 3.0

Initiation à LabView : Les exemples d applications :

Prénom : Matricule : Sigle et titre du cours Groupe Trimestre INF1101 Algorithmes et structures de données Tous H2004. Loc Jeudi 29/4/2004

Licence Bio Informatique Année Premiers pas. Exercice 1 Hello World parce qu il faut bien commencer par quelque chose...

V- Manipulations de nombres en binaire

TD3: tableaux avancées, première classe et chaînes

Cours 1 : Introduction Ordinateurs - Langages de haut niveau - Application

Programmation avec Xcas ou Python

CCI Génie Logiciel UFR - IMA. Objectifs du cours d'aujourd'hui. Génie Logiciel Validation par le test. Qu est-ce que tester un programme?

Structures algébriques

Info0101 Intro. à l'algorithmique et à la programmation. Cours 3. Le langage Java

1. Structure d un programme C. 2. Commentaire: /*..texte */ On utilise aussi le commentaire du C++ qui est valable pour C: 3.

EXERCICES - ANALYSE GÉNÉRALE

Représentation d un entier en base b

Série TD 3. Exercice 4.1. Exercice 4.2 Cet algorithme est destiné à prédire l'avenir, et il doit être infaillible! Exercice 4.3. Exercice 4.

Chapitre 2 Devine mon nombre!

Algorithmique & programmation

Licence Sciences et Technologies Examen janvier 2010

Initiation à la programmation OEF pour Wims (exercices).

Pour signifier qu'une classe fille hérite d'une classe mère, on utilise le mot clé extends class fille extends mère

Le langage C. Séance n 4

DE L ALGORITHME AU PROGRAMME INTRO AU LANGAGE C 51

Algorithmique et programmation : les bases (VBA) Corrigé

Manuel d utilisation 26 juin Tâche à effectuer : écrire un algorithme 2

Chapitre 10. Les interfaces Comparable et Comparator 1

Cours d Analyse. Fonctions de plusieurs variables

Le Langage C Version 1.2 c 2002 Florence HENRY Observatoire de Paris Université de Versailles florence.henry@obspm.fr

Cours 1 : La compilation

Les chaînes de caractères

Chapitre 2. Eléments pour comprendre un énoncé

Algorithmique avec Algobox

Les structures de données. Rajae El Ouazzani

Solutions du chapitre 4

Découverte de Python

Informatique Générale

TP : Shell Scripts. 1 Remarque générale. 2 Mise en jambe. 3 Avec des si. Systèmes et scripts

Cours d algorithmique pour la classe de 2nde

Cours de Programmation Impérative: Zones de mémoires et pointeurs

Algorithmes et Programmes. Introduction à l informatiquel. Cycle de vie d'un programme (d'un logiciel) Cycle de vie d'un programme (d'un logiciel)

Traitement de texte : Quelques rappels de quelques notions de base

1 Lecture de fichiers

Algorithmique, Structures de données et langage C

STAGE IREM 0- Premiers pas en Python

Programmation linéaire

TP : Gestion d une image au format PGM

Cours d Informatique

Correction du Baccalauréat S Amérique du Nord mai 2007

INF111. Initiation à la programmation impérative en C amini/cours/l1/inf111/ Massih-Reza Amini

Seance 2: En respectant la méthode de programmation par contrat, implémentez les autres fonctions de jeu.

Programme Compte bancaire (code)

Projet de programmation (IK3) : TP n 1 Correction

La question est : dans 450 combien de fois 23. L opération est donc la division. Le diviseur. Le quotient

TP3 : Manipulation et implantation de systèmes de fichiers 1

Cours d introduction à l informatique. Partie 2 : Comment écrire un algorithme? Qu est-ce qu une variable? Expressions et instructions

Cours 1 : Introduction. Langages objets. but du module. contrôle des connaissances. Pourquoi Java? présentation du module. Présentation de Java

2. RAPPEL DES TECHNIQUES DE CALCUL DANS R

NOTATIONS PRÉLIMINAIRES

Corrigé des TD 1 à 5

Transcription:

Master MIMSE - Spécialité 3-1ère Année J0MS7301 : Algorithmique et Programmation Objet Feuille d'exercices 1 Prise en main Exercice 0 : Ecrire un programme qui ache la phrase Bonjour le monde! à l'écran. Types, conversions, problèmes d'arrondis Exercice 1 : Ecrire un programme qui ache le résultat de 1/3 avec : 1 et 3 écrit en valeur constante entière, 1 ou 3 écrit en valeur constante réelle, Commenter les résultats achés (format d'achage, résulat). Exercice 2 : Ecrire et executer le programme suivant #include <iostream> using namespace::std; int main(){ int n,p; double x,y; bool ok; n = 4; x = 0.9; p = n * x; y = n * x; cout << p << endl; cout << y << endl; p = (int)(n*x); y = (int)(n*x); cout << p << endl; cout << y << endl; ok = (n<6) && (n>3); cout << ok << endl; ok = ((int)(n*x) == n-1); cout << ok << endl; 1

return 0; } Pour chacun des achages, indiquer le résultat mathématique attendu et le résultat aché. Expliquer les diérences. Exercice 3 : Ecrire et executer le programme suivant #include <iostream> using namespace::std; int main(){ double a = 3.6; double b = 4.5; double c = 8.1; if (a+b == c){ cout << "a+b=c" << endl; } else { cout << "a+b!=c" << endl; } if (a == c-b){ cout << "a=c-b" << endl; } else { cout << "a!=c-b" << endl; } } return 0; Que peut-on observer? Comment remédier à ce problème? Exercice 4 : On peut utiliser la notation scientique dans un programme C++. Par exemple, 10000 peut s'écrire 1e4 et 0.001 peut s'écrire 1e-3. Ecrire un programme C++ qui : initialise un entier à la valeur 10 9, multiplie cet entier par 3, 2

Est-ce le résultat attendu? Que s'est-il passé? Exercice 5 : Ecrire un programme C++ qui : initialise un réel x du type float à la valeur 10 10, Ache 1 == 0 si x = x + 1 et ache 1!= 0 sinon. Est-ce le résultat attendu? Que se passe-t-il si on déclare x du type double? Un peu de calcul Exercice 6 : Ecrire un programme C++ qui : lit un horaire au format heure, minute, seconde (lire d'abord les heures, ensuite les minutes, et enn les secondes), transforme cet horaire en secondes, Exercice 7 : Ecrire un programme C++ qui lit un nombre de secondes le transforme en un horaire au format heure, minute, seconde, Exercice 8 : Ecrire un programme en C++ qui lit un horaire de départ (format heure, minute, seconde), lit un horaire d'arrivée (format heure, minute, seconde), calcule le temps de trajet (indice : faire le calcul en secondes) ache le résultat (format heure, minute, seconde), Les alternatives Exercice 9 : Ecrire un programme en C++ qui indique si un entier entré au clavier est positif ou nul, ou strictement négatif. Exercice 10 : 3

Ecrire un programme en C++ qui indique si un entier entré au clavier est compris entre 5 et 10. Exercice 11 : Ecrire un programme en C++ qui calcule la racine carré d'un réel si celui-ci est strictement positif. Exercice 12 : Ecrire un programme en C++ qui lit une date au clavier et qui vérie sa validité. Rappel : une année bissextile est soit une année divisible par 4 et non divisible par 100, soit une année divisible par 400. (2000 est une année bissextile tandis que 1900 ne l'est pas.) Les boucles nies Exercice 13 : Ecrire un programme en C++ qui calcule les n premiers termes (n donné par l'utilisateur) de la suite harmonique dénie par u n = 1 + 1 2 + 1 3 + 1 4 +... + 1 n. Exercice 14 : Ecrire un programme en C++ qui calcule, sans les stocker, la somme de n entiers (n fourni par l'utilisateur) lus au clavier. Exercice 15 : Ecrire un programme en C++ qui trouve le maximum et le minimum de n entiers (n fourni par l'utilisateur) lus au clavier. Cet algorithme ne doit pas stocker les entiers. Exercice 16 : Ecrire un programme en C++ qui calcule le énième terme (n fourni par l'utilisateur) de la suite de Fibonacci dénie par u 1 = 1 u 2 = 1 u n = u n 1 + u n 2 pour n > 2. Exercice 17 : 4

Ecrire un programme en C++ qui calcule les n premiers termes (n donné par l'utilisateur) des suites U n+1 = U n M U n + (N V n ) U n V n+1 = V n (M U n ) V n + N V n qui représentent l'évolution respective de la population de Lynx et de la population de lièvres dans la baie d'hudson. On prendra M = 0, 03 N = 0, 0002 M = 0, 001 N = 0, 05 U 0 = 50 V 0 = 200. Déterminer en même temps quelle est la population maxi et mini de lynx et de lièvre sur la période étudiée. Les boucles innies Exercice 18 : Ecrire un programme en C++ qui demande une valeur à l'utilisateur de rentrer un entier jusqu'à ce qu'il soit compris entre 1 et 100. Exercice 19 : Ecrire un programme en C++ qui fait la somme de valeurs réelles entrées au clavier jusqu'à ce quela somme dépasse 100. Exercice 20 : Ecrire un programme en C++ qui demande à l'utilisateur de rentrer une note de contrôle continu (coecient 1/3) et une note d'examen (coecient 2/3) et qui calcule la moyenne pondérée de ces deux notes. Le programme devra, après chaque calcul, demander à l'utilisateur s'il désire recommencer et ainsi boucler jusqu'à ce qu'il souhaite s'arrêter. Exercice 21 : Ecrire un programme en C++ qui : lit un ensemble de nombres réels non nuls tapés au clavier (le nombre de terme n'est pas connu à l'avance, la saisie s'arrête par la frappe de la valeur 0), ache en n de saisie le nombre, la moyenne, le maximum et le minimum de ces nombres. 5

Réaliser cela sans stocker les nombres réels dans un tableau. Exercice 22 : Ecrire un programme en C++ permettant : de lire au clavier une valeur entière x, de remplacer x par x div 2 si x est pair, par 3 x + 1 sinon, de recommencer l'opération précédente jusqu'à l'obtention du nombre 1. Le programme devra acher les valeurs successives de n et le nombre d'itérations qui ont été nécessaire pour obtenir 1. Les tableaux statiques Exercice 23 : Ecrire un programe en C++ qui : déclare un tableau de 10 entiers, lit dix entiers au clavier et les stocke dans le tableau, ache le tableau. Exercice 24 : Ecrire un programme en C++ qui : déclare deux tableaux de 5 entiers, lit 10 entiers et les stocke dans les deux tableaux, fait le produit membre à membre des deux tableaux dans un troisième tableau, Exercice 25 : Ecrire un programme en C++ qui : déclare deux tableaux de 100 entiers, demande à l'utilisateur la taille des vecteurs qu'il désire sommer lit les valeurs des deux vecteurs et les stocke dans les deux tableaux, fait la somme membre à membre des deux vecteurs, Attention, vérier que la taille entrée par l'utilisateur ne dépasse pas la taille maximale du tableau. Remarque : noter que la déclaration du vecteur (tableau) se faisant avant la lecture de sa taille (déclaration statique), il sera nécessaire de : déclarer un tableau d'une taille xe assez grande, travailler sur une sous-partie de ce tableau, vérier que la taille entrée par l'utilisateur ne dépasse pas la taille maximale du tableau déclaré. 6

Exercice 26 : Ecrire un programme en C++ qui demande à l'utilisateur de rentrer la taille d'un vecteur et le vecteur lui-même, puis qui : eectue la somme des éléments du vecteur, cherche la position de l'élément minimum et celle de l'élément maximum du vecteur, ache le vecteur et les résultats précédents. Exercice 27 : Ecrire un programme en C++ qui lit une matrice n m de réels (n, m et les valeurs de la matrice étant donnés par l'utilisateur). Tester les diérentes manières d'acher cette matrice : print *,mat print *.mat(:n,:m) double boucle pour acher les éléments un par un, une boucle qui ache chaque ligne de la matrice. Exercice 28 : Ecrire un programme en C++ qui fasse le produite scalaire de deux vecteurs de taille m (la taille et le vecteur étant dénies par l'utilisateur). Exercice 29 : Ecrire un programme en C++ qui fasse le produit d'un vecteur ligne de taille m et d'une matrice m n (m et n ainsi que le vecteur et la matrice seront donnés par l'utilisateur). Exercice 30 : Ecrire un programme en C++ qui fasse le produit d'une matrice m n et d'une matrice n p (m, n et p ainsi que les deux matrices seront donnés par l'utilisateur). Exercice 31 : Ecrire un programme en C++ qui : lit une taille n au clavier, lit un tableau de n entiers au clavier, trie ce tableau en utilisant le tri par sélection, ache ce tableau à l'écran. Pour rappel, le tri par sélection consiste, à chaque itération k = 1,..., n 1, à considérer que le sous-tableau allant de 1 à k 1 est trié et contient les k 1 plus petites valeurs, 7

chercher la plus petite valeur dans le sous-tableau allant de k à n, échanger cette valeur avec la valeur se trouvant en position k. 8