← (précédent) B.1 Exercices sur l'écriture de méthodes.
B.3 Adresse e-mail valide
Accueil S O M M A I R E

B.2 Quelques mini-projets

Il y a toujours plus d'une façon de résoudre un problème. Les solutions proposées ici tiennent compte du caractère débutant des auditeurs. Donc, mes solutions seront toujours plus longues que celles d'un AS de la programmation.

NB : Créer une méthode c'est bien. Mais si elle est déjà prédéfinie par le langage, c'est nul.
Vous ne ferez jamais mieux que les créateurs de Java

Mini-projet 1 : Adresse e-mail valide

Ecrire un programme qui demande à l'utilisateur de saisir une adresse e-mail. Puis le programme affiche un message lui informant si l'adresse est valide ou non.
La question qui se pose dans ce projet est de savoir ce qu'est une adresse e-mail valide.

Une bonne adresse, selon le sens commun, contient le caractère arobase ( @ ) et le caractère point : ( . )

Mais une adresse e-mail, au sens le plus général ne contient pas forcément le caractère @. Alors, pour ce mini-projet, nous allons nous doter d'une définition de ce qu'est une adresse e-mail valide. Même si ce n'est pas la stricte vérité. C'est juste histoire de se donner une référence à respecter, nous permettant ainsi d'utiliser nos connaissances acquises jusqu'ici.

  • Le premier caractère n'est pas un chiffre
  • Un seul caractère arobase ( @ )
  • Au minimum 3 caractères avant le caractère @
  • Aucun caractère espace
  • Un seul caractère point ( . )
  • Au moins 3 caractères avant le caractère point.
  • Au moins 2 caractères après le caractère point
  • Le caractère point se trouve après le caractère @


Pistes : un certain nombre de méthodes de la classe String.
Mini-projet 2 : Prose de M. Jourdain

Ecrire un programme qui demande à l'utilisateur de saisir une phrase. Puis le programme affiche les mots de cette phrase dans un ordre pris au hasard. Aide : utilisez Le méthodes Math.random() et la méthode split() de la classe String
Rappel de la prose de M. JOURDAIN dans l'oeuvre de Molière : le bourgeois gentilhomme.

MAITRE DE PHILOSOPHIE :
On peut les mettre premièrement comme vous avez dit :
Belle Marquise, vos beaux yeux me font mourir d'amour.
Ou bien : D'amour mourir me font, belle Marquise, vos beaux yeux.
Ou bien : Vos yeux beaux d'amour me font, belle Marquise, mourir.
Ou bien : Mourir vos beaux yeux, belle Marquise, d'amour me font.
Ou bien : Me font vos yeux beaux mourir, belle Marquise, d'amour.

MONSIEUR JOURDAIN :
Mais de toutes ces façons-là, laquelle est la meilleure ?

MAITRE DE PHILOSOPHIE :
Celle que vous avez dite : Belle Marquise, vos beaux yeux me font mourir d'amour.

Certains d'entre vous se souviennent de ce passage du roman classique de molière.

Mini-projet 3 : Ordre numérique

Le but est d'écrire un programme qui demande à l'utilisateur d'entrer une série de nombres (entiers ou décimaux). Puis le programme affiche ces noms par ordre croissant ou décroissant (au choix).
Mini-projet 4 : Nombres Premiers

Un nombre premier est un entier naturel, admettant exactement deux diviseurs distincts : 1 et lui-même.

Par opposition, un nombre non nul produit de deux nombres entiers différents de 1 est dit composé.
Par exemple 12 = 2×6 est composé, tout comme 21 = 3×7 ou 7×3. Mais 11 est premier car 1 et 11 sont les seuls diviseurs de 11. 1 n'est ni premier ni composé. Les nombres premiers inférieurs à 100 sont :
2, 3, 5, 7, 11, 13, 17, 19, 23, 29, 31, 37 , 41, 43, 47, 53, 59, 61, 67, 71, 73, 79, 83, 89 et 97.

Un nombre entier p divise un nombre entier q si le reste de la division entière de q par p est zéro.

a. Ecrire une méthode booléenne qui, étant donnés deux entiers strictement positifs p et q, teste si p divise q.

b. Ecrire une fonction qui, étant donné un entier p, rend le nombre de diviseurs de p. exemple : 12 à 6 diviseurs : 1,2,3,4,6,12

c. En utilisant la méthode de b, écrire une méthode (appelée estPremier() ) qui teste le caractère Premier d'un nombre.

d. En fait, si l'on trouve un diviseur pour un nombre p qui est différent de 1 et de p, on peut en déduire immédiatement que p n'est pas premier. Ecrire une fonction isPremier utilisant cette propriété.

e. Améliorer en ne considérant comme diviseurs que le nombre 2 et les nombres impairs ( en effet si un nombre n'est pas divisible par 2, il ne sera divisible par aucun nombre pairs !)

f. Améliorer en arretant les tests lorsque le diviseur dépasse la racine carrée de n. (en effet, si un diviseur de p est supérieur à la racine carrée de n, le quotient est donc inférieur à n et aura été trouvé avant).

g. Ecrire une fonction affichant la liste des n premiers nombres premiers inférieurs à n.

Le but de ce projet est d'écrire un programme qui demande à l'utilisateur de saisir un entier naturel n, non nul. Puis le programme affiche les n premières lignes du triangle de Pascal. Exemple : l'affichage ci-dessus correspond à n = 7.

Piste : pensez aux tableaux multi-dimensionnels
Mini-projet 5 : Triangle de Pascal

En mathématiques, le triangle de Pascal, est un arrangement géométrique des coefficients binomiaux dans un triangle.



Piste : pensez aux tableaux multi-dimensionnels

À la ligne i et à la colonne j (0 <= j <= i) est placé le coefficient binomial
1
1     1
1     2     1
1     3     3      1
1     4     6      4      1
1     5     10     10     5      1
1     6     15     20     15     6     1

Mini-projet 6 : Loto

La française des Jeux organise chaque lundi, mercredi et samedi, un jeu de tirage de boules numérotés de 1à 49. 5 boules au total. Puis un tirage d'une boule dont le numéro (dit chance) varie de 1 à 10.

Ecrire un programme qui demande à l'utilisateur de jouer une seule grille. Donc, l'utilisateur saisit 5 numéros + le numéro chance. Puis le programme affiche un tirage au hasard de 5 numéros et le numéro chance. Ensuite le programme informe le joueur le nombre de numéros trouvés.

Aide : La méthode Math.random()
La connaissance, c'est bien. La partager, c'est mieux
Conseiller ce site à un(e) ami(e):

Son e-mail est :       
Une suggestion à faire pour ce site ? ... Contact : webmaster@debutantprog.com
← (précédent) B.1 Exercices sur l'écriture de méthodes.
B.3 Adresse e-mail valide
Accueil S O M M A I R E

B.2 Quelques mini-projets