↑
EXERCICES CHAPITRE 1.2

Exercices pratiques Dart

Mettez en pratique vos connaissances sur les types, variables, fonctions et les bases du langage Dart
Ces exercices vous permettront de mettre en pratique les concepts appris dans le chapitre 1.2 : les types de données, les variables, les fonctions, et les bases de la programmation Dart. Commencez par les exercices les plus simples et progressez progressivement. Essayez de résoudre chaque exercice par vous-même avant d'afficher la solution.

Exercice 1 : Votre premier programme Dart

Écrire un programme Dart qui affiche "Hello, World!" dans la console en créant une fonction main() et en utilisant la fonction print() pour afficher exactement ce message.


Exercice 2 : Manipulation de variables

Écrire un programme Dart qui déclare trois variables : une variable nom de type String avec la valeur "Alice", une variable age de type int avec la valeur 25, et une variable taille de type double avec la valeur 1.68. Le programme doit calculer l'âge en mois (multiplier l'âge par 12) et afficher un message qui combine toutes ces informations en utilisant l'interpolation de chaînes.


Exercice 3 : Calculs mathématiques

Écrire un programme Dart qui déclare deux variables a et b de type int avec les valeurs 15 et 7. Le programme doit calculer et afficher la somme, la différence, le produit, le quotient (division entière avec ~/), et le reste de la division (modulo avec %) de ces deux nombres.


Exercice 4 : Conditions et booléens

Écrire un programme Dart qui déclare une variable age de type int avec la valeur 20. Le programme doit vérifier si la personne est majeure (âge >= 18) et afficher "Vous êtes majeur" ou "Vous êtes mineur" selon le cas.


Exercice 5 : Créer une fonction simple

Écrire un programme Dart qui définit une fonction direBonjour() qui affiche "Bonjour !" dans la console. Cette fonction ne prend aucun paramètre et ne retourne rien. Appeler cette fonction depuis la fonction main().


Exercice 6 : Fonction avec paramètres

Écrire un programme Dart qui définit une fonction saluer(String nom) qui prend un paramètre nom de type String et affiche "Bonjour, [nom] !" dans la console. Appeler cette fonction depuis main() avec le nom "Alice".


Exercice 7 : Fonction qui retourne une valeur

Écrire un programme Dart qui définit une fonction additionner(int a, int b) qui prend deux paramètres entiers et retourne leur somme. Appeler cette fonction depuis main() avec les valeurs 10 et 25, puis afficher le résultat.


Exercice 8 : Fonction avec syntaxe courte

Écrire un programme Dart qui définit une fonction multiplier(int a, int b) qui retourne le produit de deux nombres en utilisant la syntaxe courte avec => (arrow function). Appeler cette fonction depuis main() avec les valeurs 5 et 8.


Exercice 9 : Manipulation de listes

Écrire un programme Dart qui crée une liste de String contenant trois fruits : "Pomme", "Banane", "Orange". Afficher le premier fruit de la liste, ajouter "Kiwi" à la fin de la liste, puis afficher tous les fruits de la liste en utilisant une boucle for.


Exercice 10 : Utilisation de Map

Écrire un programme Dart qui crée une Map associant des noms de pays (String) à leurs capitales (String). Ajouter au moins trois pays avec leurs capitales. Afficher la capitale de la France en accédant à la Map avec la clé "France".


Exercice 11 : Créer une classe simple

Écrire un programme Dart qui définit une classe Personne avec deux attributs : nom (String) et age (int). Créer un constructeur qui initialise ces deux attributs. Créer une instance de cette classe dans main() avec le nom "Bob" et l'âge 30, puis afficher ces informations.


Exercice 12 : Ajouter une méthode à une classe

Écrire un programme Dart qui définit une classe Rectangle avec deux attributs largeur et hauteur (tous deux de type double). Ajouter une méthode calculerAire() qui retourne l'aire du rectangle (largeur × hauteur). Créer une instance avec largeur 5.0 et hauteur 3.0, puis afficher l'aire.


Exercice 13 : Constructeur avec paramètres nommés

Écrire un programme Dart qui définit une classe Utilisateur avec trois attributs : nom (String, obligatoire), email (String, obligatoire), et age (int, optionnel avec valeur par défaut 18). Utiliser un constructeur avec paramètres nommés. Créer une instance avec nom "Alice", email "alice@exemple.com" et age 25, puis afficher ces informations.


Exercice 14 : Utiliser un getter

Écrire un programme Dart qui définit une classe Cercle avec un attribut privé _rayon (double) et un getter public rayon pour accéder au rayon. Ajouter un getter calculé perimetre qui retourne le périmètre du cercle (2 × π × rayon, avec π = 3.14159). Créer une instance avec rayon 5.0 et afficher le périmètre.


Exercice 15 : Héritage

Écrire un programme Dart qui définit une classe Animal avec un attribut nom (String) et une méthode manger() qui affiche "[nom] mange...". Créer une classe Chien qui hérite de Animal et ajoute une méthode aboyer() qui affiche "[nom] aboie: Wouf Wouf!". Créer une instance de Chien avec le nom "Rex" et appeler les deux méthodes.


Exercice 16 : Constructeurs nommés

Écrire un programme Dart qui définit une classe Point avec deux attributs x et y (tous deux de type double). Créer un constructeur principal qui prend ces deux paramètres, puis créer un constructeur nommé Point.origine() qui initialise le point à (0, 0). Créer deux instances : une avec le constructeur principal (x=5, y=10) et une avec le constructeur nommé, puis afficher leurs coordonnées.


Exercice 17 : Utiliser un setter

Écrire un programme Dart qui définit une classe Rectangle avec deux attributs privés _largeur et _hauteur (tous deux de type double). Créer un getter largeur pour lire la largeur et un setter largeur qui valide que la valeur est positive avant de l'assigner. Si la valeur est négative ou nulle, le setter ne doit rien faire. Créer une instance avec largeur 10 et hauteur 5, puis modifier la largeur à 15 en utilisant le setter et afficher la nouvelle largeur.


Exercice 18 : Utiliser des mixins

Écrire un programme Dart qui définit un mixin Nageur avec une méthode nager() qui affiche "Je nage...". Créer une classe Animal avec un attribut nom (String). Créer une classe Poisson qui hérite de Animal et utilise le mixin Nageur. Créer une instance de Poisson avec le nom "Nemo" et appeler la méthode nager().


Exercice 19 : Implémenter une interface

Écrire un programme Dart qui définit une classe Volant avec une méthode voler() qui affiche "Je vole...". Créer une classe Oiseau qui implémente l'interface Volant avec un attribut nom (String). La classe Oiseau doit redéfinir la méthode voler() avec l'annotation @override pour afficher "[nom] bat des ailes et vole!". Créer une instance de Oiseau avec le nom "Aigle" et appeler la méthode voler().


Félicitations !

Vous avez complété tous les exercices de base du langage Dart. Ces exercices couvrent les concepts essentiels nécessaires avant de commencer Flutter : types de données, variables, fonctions, collections, classes, héritage, constructeurs nommés, setters, mixins, et interfaces. Continuez à pratiquer en créant vos propres variantes de ces exercices pour renforcer votre compréhension.