Avec des exercices corrigés en Java, vous pratiquerez divers concepts du langage de programmation Java. Vous commencerez par des exercices Java de base à des exercices plus avancés. La solution est fournie pour chaque exercice. Vous devez essayer de résoudre chaque problème par vous-même avant de vérifier la solution. Si vous avez des questions concernant chaque problème, nous vous encourageons à les poster sur notre forum.
Exercice 1:
Écrire un programme Java pour trouver l’avant-dernier mot d’une phrase.
Exemple:
Saisir une phrase: Je vais au concert ce soir
L'avant-dernier mot est: ce
Solution:
import java.util.*;
public class Main {
public static void main(String[] args) {
Scanner sc = new Scanner(System.in);
System.out.print("Saisir une phrase: ");
String phrase = sc.nextLine();
// Diviser la phrase en mots en utilisant un ou plusieurs
// espaces comme délimiteur
String[] mots = phrase.split("[ ]+");
// Afficher l'avant-dernier mot
System.out.println("L'avant-dernier mot est: "+ mots[mots.length - 2]);
}
}
Sortie:
Saisir une phrase: Je vais au concert ce soir
L'avant-dernier mot est: ce
Exercice 2:
Écrire un programme Java qui accepte deux valeurs entières comprises entre 20 et 50 et qui renvoie True s’il y a un chiffre commun dans les deux nombres.
Exemple:
Saisir le premier nombre: 25
Saisir le deuxième nombre: 35
Résultat: true
Solution:
import java.util.*;
public class Main {
public static void main(String[] args) {
Scanner sc = new Scanner(System.in);
System.out.print("Saisir le premier nombre: ");
int a = sc.nextInt();
System.out.print("Saisir le deuxième nombre: ");
int b = sc.nextInt();
// Appeler la méthode chiffre_commun avec les deux nombres et
// afficher le résultat
System.out.println("Résultat: " + chiffre_commun(a, b));
}
// Définir une méthode pour vérifier s'il y a un chiffre commun
// entre deux nombres
public static boolean chiffre_commun(int a, int b) {
// Check if a is less than 20 or b is greater than 50
if (a < 20 || b > 50) {
return false;
}
// Extraire le dernier chiffre de chaque nombre
int x = a % 10;
int y = b % 10;
// Enlever le dernier chiffre des deux nombres
a /= 10;
b /= 10;
// Vérifier s'il y a un chiffre commun en comparant
// les chiffres restants
return (a == b || a == y || x == b || x == y);
}
}
Sortie:
Saisir le premier nombre: 25
Saisir le deuxième nombre: 35
Résultat: true
Exercice 3:
Écrire un programme Java pour calculer le modulo de deux nombres sans utiliser l’opérateur de modulo intégré.
Exemple:
Saisir le premier nombre: 10
Saisir le deuxième nombre: 2
0
Solution:
import java.util.*;
public class Main {
public static void main(String[] args) {
Scanner sc = new Scanner(System.in);
System.out.print("Saisir le premier nombre: ");
int a = sc.nextInt();
System.out.print("Saisir le deuxième nombre: ");
int b = sc.nextInt();
// Calculer le résultat de la division de a par b
int div = a / b;
// Calculer le reste de a divisé par b
int res = a - (div * b);
// Afficher le reste
System.out.println(res);
}
}
Sortie:
Saisir le premier nombre: 10
Saisir le deuxième nombre: 2
0
Exercice 4:
Ecrivez un programme Java pour calculer la somme des 50 premiers nombres premiers.
Exemple:
Somme des nombres premiers jusqu'à 50: 328
Solution:
import java.util.*;
public class Main {
public static void main(String[] args) {
// Initialiser les variables pour la somme, le compteur et
// le nombre 'n'.
int sum = 1;
int c = 0;
int n = 0;
// Répéter l'opération tant que le compteur est < 50
while (c < 50) {
n++;
// Vérifier si le nombre est impair
if (n % 2 != 0) {
// Si le nombre est premier, il est ajouté à la
// somme.
if (nbr_premier(n)) {
sum += n;
}
}
// Incrémenter le compteur
c++;
}
// Afficher la somme des nombres premiers jusqu'à 50
System.out.println("Somme des nombres premiers jusqu'à 50: " + sum);
}
// Vérifier si un nombre est premier
public static boolean nbr_premier(int n) {
for (int i = 3; i * i <= n; i += 2) {
if (n % i == 0) {
return false;
}
}
return true;
}
}
Sortie:
Somme des nombres premiers jusqu'à 50: 328
Exercice 5:
Écrire un programme Java pour insérer un mot au milieu d'une autre chaîne. Exemple: Insérez « To » au milieu de « Welcome WayToLearnX! », de sorte que le résultat sera « Welcome To WayToLearnX! ».
Exemple:
Welcome To WayToLearnX!
Solution:
import java.lang.*;
public class Main {
public static void main(String[] args) {
String str = "Welcome WayToLearnX!";
String mot = "To";
// Créer une nouvelle chaîne en concaténant des sous-chaînes
String res = str.substring(0, 8) + mot + str.substring(7);
// Afficher le résultat
System.out.println(res);
}
}
Sortie:
Welcome To WayToLearnX!
Explication:
La méthode substring() renvoie une sous-chaîne de la chaîne. Si le 2éme argument(end) n'est pas spécifié, la sous-chaîne se terminera à la fin de la chaîne.
Exercice 6:
Ecrivez un programme Java pour créer une autre chaîne de 4 copies des 3 derniers caractères de la chaîne originale. La longueur de la chaîne doit être supérieure ou égale à 3.
Exemple:
BobBobBobBob
Solution:
import java.lang.*;
public class Main {
public static void main(String[] args) {
String str = "Hello Bob";
// Extraire les trois derniers caractères
String ch = str.substring(str.length() - 3);
// Répétez les trois derniers caractères quatre fois et
// affichez le résultat.
System.out.println(ch + ch + ch + ch);
}
}
Sortie:
BobBobBobBob
Exercice 7:
Écrire un programme Java pour extraire la première moitié d'une chaîne.
Exemple:
WayToLearnX -> WayTo
Solution:
import java.lang.*;
public class Main {
public static void main(String[] args) {
String str = "WayToLearnX";
// Extraire la sous-chaîne du début au milieu
String res = str.substring(0, str.length() / 2);
// Afficher le résultat
System.out.println(res);
}
}
Sortie:
WayTo
Exercice 8:
Écrivez un programme Java pour créer une chaîne de la forme chaîne_courte + chaîne_longue + chaîne_courte à partir de deux chaînes. Les chaînes ne doivent pas avoir la même longueur.
Exemple:
str1: A
str2: hello
Résultat: AhelloA
Solution:
import java.lang.*;
public class Main {
public static void main(String[] args) {
String str1 = "A";
String str2 = "hello";
// Vérifier la longueur des chaînes
if (str1.length() >= str2.length()) {
// Concaténer les chaînes dans l'ordre suivant:
// str2 + str1 + str2
System.out.println(str2 + str1 + str2);
} else {
// Concaténer les chaînes dans l'ordre suivant:
// str1 + str2 + str1
System.out.println(str1 + str2 + str1);
}
}
}
Sortie:
AhelloA
Exercice 9:
Ecrivez un programme Java pour créer la concaténation des deux chaînes de caractères en supprimant le premier caractère de chaque chaîne. La longueur des chaînes doivent être supérieures ou égales à 1.
Exemple:
str1: Hello
str2: World
Résultat: elloorld
Solution:
import java.lang.*;
public class Main {
public static void main(String[] args) {
String s1 = "Hello";
String s2 = "World";
// Afficher les sous-chaînes des deux chaînes, à l'exclusion
// du premier caractère.
System.out.println(s1.substring(1) + s2.substring(1));
}
}