Compare commits
8 Commits
correction
...
master
Author | SHA1 | Date | |
---|---|---|---|
4e700efb76 | |||
0322d823a2 | |||
1c1f3b6a3a | |||
f8cf339f65 | |||
f816fd180f | |||
64af6ce32e | |||
a88103d6c7 | |||
92cbcae4cf |
22
Accents.java
Normal file
22
Accents.java
Normal file
@ -0,0 +1,22 @@
|
|||||||
|
import static utils.Utils.*;
|
||||||
|
|
||||||
|
public class Accents {
|
||||||
|
|
||||||
|
private static final String TEST =
|
||||||
|
"Avec la mer du Nord pour dernier terrain vague,\n"+
|
||||||
|
"Et des vagues de dunes pour arrêter les vagues,\n"+
|
||||||
|
"Et de vagues rochers que les marées dépassent,\n"+
|
||||||
|
"Et qui ont à jamais le coeur à marée basse.\n"+
|
||||||
|
"Avec infiniment de brumes à venir\n"+
|
||||||
|
"Avec le vent d'ouest écoutez le tenir\n"+
|
||||||
|
"Le plat pays qui est le mien.\n";
|
||||||
|
|
||||||
|
public static final void main(String[] args) {
|
||||||
|
afficher("Accents");
|
||||||
|
|
||||||
|
char[] test = TEST.toCharArray();
|
||||||
|
afficher(String.valueOf(test));
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
38
Analyse1.java
Normal file
38
Analyse1.java
Normal file
@ -0,0 +1,38 @@
|
|||||||
|
import static utils.Utils.*;
|
||||||
|
|
||||||
|
public class Analyse1 {
|
||||||
|
|
||||||
|
public static final void main(String[] args) {
|
||||||
|
afficher("Analyse 1");
|
||||||
|
|
||||||
|
int[] tab1 = new int[] { 12, 0, 5, 21 };
|
||||||
|
afficher("tab1:");
|
||||||
|
maFonction(tab1);
|
||||||
|
|
||||||
|
int[] tab2 = new int[] { 81, 13, 100, 4 };
|
||||||
|
afficher("tab2:");
|
||||||
|
maFonction(tab2);
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
public static void maFonction(int[] tab){
|
||||||
|
|
||||||
|
int m1 = 0;
|
||||||
|
int m2 = 0;
|
||||||
|
|
||||||
|
for (int i = 0; i < tab.length; i++) {
|
||||||
|
int n = tab[i];
|
||||||
|
|
||||||
|
if (m1 < n) {
|
||||||
|
m2 = m1;
|
||||||
|
m1 = n;
|
||||||
|
} else if (m2 < n) {
|
||||||
|
m2 = n;
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
||||||
|
afficher(m1);
|
||||||
|
afficher(m2);
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
25
Cours.md
25
Cours.md
@ -351,3 +351,28 @@ Certains langages sont dédiés à la manipulation de données (lecture, créati
|
|||||||
D'autres langages sont utilisés pour la création de documents (HTML) ou la mise en page (CSS).
|
D'autres langages sont utilisés pour la création de documents (HTML) ou la mise en page (CSS).
|
||||||
|
|
||||||
Certains langages sont dit "embarqués", car ils ne sont pas exécutés directement sur le processeur mais au sein d'un autre logiciel (par exemple javascript dans un navigateur).
|
Certains langages sont dit "embarqués", car ils ne sont pas exécutés directement sur le processeur mais au sein d'un autre logiciel (par exemple javascript dans un navigateur).
|
||||||
|
|
||||||
|
# Cours java
|
||||||
|
|
||||||
|
Sommaire: https://www.jmdoudoux.fr/java/dej/index.htm
|
||||||
|
|
||||||
|
Chapitres essentiels
|
||||||
|
|
||||||
|
* https://www.jmdoudoux.fr/java/dej/chap-presentation.htm 1.1
|
||||||
|
* https://www.jmdoudoux.fr/java/dej/chap-techniques-base.htm 2.1 (voir plus tard)
|
||||||
|
* https://www.jmdoudoux.fr/java/dej/chap-syntaxe.htm parcourir rapidement, revenir pour les détails
|
||||||
|
* https://www.jmdoudoux.fr/java/dej/chap-poo.htm gros morceau objet, voir en plusieurs fois, avec exercices
|
||||||
|
* https://www.jmdoudoux.fr/java/dej/chap-packages-base.htm packages de bases, filtrer les classes utiles
|
||||||
|
* https://www.jmdoudoux.fr/java/dej/chap-math.htm maths, pas indispensable
|
||||||
|
* https://www.jmdoudoux.fr/java/dej/chap-exceptions.htm exceptions, important
|
||||||
|
* https://www.jmdoudoux.fr/java/dej/chap-jdk1.5.htm spécificités java 5, voir rapidement, revenir après collections
|
||||||
|
* https://www.jmdoudoux.fr/java/dej/chap-annotations.htm voir plus tard
|
||||||
|
* https://www.jmdoudoux.fr/java/dej/chap-java7.htm specificités java 7, voir rapidement
|
||||||
|
* https://www.jmdoudoux.fr/java/dej/chap-lambdas.htm voir plus tard
|
||||||
|
* https://www.jmdoudoux.fr/java/dej/chap-collections.htm collections
|
||||||
|
|
||||||
|
Autres sujets:
|
||||||
|
|
||||||
|
* https://www.jmdoudoux.fr/java/dej/chap-normes-dev.htm normes de développement, utile à connaître
|
||||||
|
* https://www.jmdoudoux.fr/java/dej/chap-utilisation_dates.htm dates, voir surtout la nouvelle API
|
||||||
|
* https://www.jmdoudoux.fr/java/dej/partie15.htm tests unitaires, voir principalement Junit4/5
|
||||||
|
29
Exercices.md
29
Exercices.md
@ -135,6 +135,10 @@ Exemple:
|
|||||||
|
|
||||||
## Exercice 9
|
## Exercice 9
|
||||||
|
|
||||||
|
Que fait maFonction dans Analyse1.java?
|
||||||
|
|
||||||
|
## Exercice 10
|
||||||
|
|
||||||
Afficher la suite de Fibonacci.
|
Afficher la suite de Fibonacci.
|
||||||
|
|
||||||
Il s’agit d’une suite de nombres dans laquelle tout nombre (à partir du troisième) est égal à la somme des deux précédents:
|
Il s’agit d’une suite de nombres dans laquelle tout nombre (à partir du troisième) est égal à la somme des deux précédents:
|
||||||
@ -145,13 +149,19 @@ Il s’agit d’une suite de nombres dans laquelle tout nombre (à partir du tro
|
|||||||
|
|
||||||
=> Fibonacci.java
|
=> Fibonacci.java
|
||||||
|
|
||||||
## Exercice 10
|
## Exercice 11
|
||||||
|
|
||||||
Convertir un nombre romain en entier (avec "chiffre" romains I, V et X).
|
Convertir un nombre romain en entier (avec "chiffre" romains I, V et X).
|
||||||
|
|
||||||
=> Romain.java
|
=> Romain.java
|
||||||
|
|
||||||
## Exercice 11
|
## Exercice 12
|
||||||
|
|
||||||
|
Remplacer tous les caractères accentués par caractères non accentués.
|
||||||
|
|
||||||
|
=> Accents.java
|
||||||
|
|
||||||
|
## Exercice 13
|
||||||
|
|
||||||
Chiffre de César:
|
Chiffre de César:
|
||||||
|
|
||||||
@ -159,10 +169,23 @@ Le texte chiffré s'obtient en remplaçant chaque lettre du texte clair original
|
|||||||
|
|
||||||
=> CesarChiffre.java CesarDechiffre.java
|
=> CesarChiffre.java CesarDechiffre.java
|
||||||
|
|
||||||
## Exercice 12
|
## Exercice 14
|
||||||
|
|
||||||
Tester si un mot est un palindrome. Un palindrome est un mot qui peut se lire dans les 2 sens: été, ici, colloc
|
Tester si un mot est un palindrome. Un palindrome est un mot qui peut se lire dans les 2 sens: été, ici, colloc
|
||||||
|
|
||||||
|
## Exercice 15
|
||||||
|
|
||||||
|
Vérification ISBN à 13 caractères:
|
||||||
|
|
||||||
|
Retirer les tirets, ajouter tous les chiffres en multipliant successivement par 1 puis 3. Le résultat doit être un multiple de 10.
|
||||||
|
|
||||||
|
Exemple:
|
||||||
|
|
||||||
|
978-2-3793-1012-6
|
||||||
|
9x1 + 7x3 + 8x1 + 2x3 + 3x1 + 7x3 + 9x1 + 3x3 + 1x1 + 0x3 + 1x1 + 2x3 + 6x1 = 100
|
||||||
|
|
||||||
|
=> Isbn.java
|
||||||
|
|
||||||
# Idées
|
# Idées
|
||||||
|
|
||||||
* Chiffrement de César
|
* Chiffrement de César
|
||||||
|
43
ExercicesJava.md
Normal file
43
ExercicesJava.md
Normal file
@ -0,0 +1,43 @@
|
|||||||
|
# Exercices java
|
||||||
|
|
||||||
|
## Bases classe/objet
|
||||||
|
|
||||||
|
### Bonjour
|
||||||
|
|
||||||
|
* Créer un programme java qui affiche "Bonjour", appeler la classe principale `Application`.
|
||||||
|
|
||||||
|
### Classe et objet
|
||||||
|
|
||||||
|
* Créer une classe `Personne` vide. Créer un objet de cette classe dans la classe `Application`.
|
||||||
|
|
||||||
|
### Constructeur
|
||||||
|
|
||||||
|
* Ajouter un constructeur à la classe `Personne`, et lui faire afficher "Constructeur!".
|
||||||
|
|
||||||
|
### Constructeurs multiples
|
||||||
|
|
||||||
|
* Ajouter un autre constructeur à la classe `Personne`, prenant en paramètre une chaine de caractères `nom`.
|
||||||
|
* Faire afficher le paramètre `nom` par le constructeur.
|
||||||
|
* Modifier la classe `Application` pour utiliser ce constructeur.
|
||||||
|
|
||||||
|
### Variable d'instance
|
||||||
|
|
||||||
|
* Ajouter à la classe `Personne` une variable d'instance `nom`.
|
||||||
|
* Dans le second constructeur, valoriser la variable d'instance avec le paramètre, et supprimer l'affichage.
|
||||||
|
|
||||||
|
### Méthodes
|
||||||
|
|
||||||
|
* Ajouter à la classe `Personne` une méthode `ecrireNom`, qui affiche `Mon nom est ` puis la valeur de la variable d'instance `nom`.
|
||||||
|
* Appeler cette méthode depuis `Application`.
|
||||||
|
|
||||||
|
### Getters/setters
|
||||||
|
|
||||||
|
* Ajouter à la classe `Personne` les getter/setter pour l'attribut `nom`.
|
||||||
|
* Modifier la classe `Application` pour changer le nom, avant l'appel à `ecrireNom`.
|
||||||
|
|
||||||
|
### Composition
|
||||||
|
|
||||||
|
* Créer une classe `Cerveau`.
|
||||||
|
* Ajouter un constructeur à cette classe qui affiche "Réflexion...".
|
||||||
|
* Ajouter un attribut `cerveau` de type `Cerveau` à la classe `Personne`.
|
||||||
|
* Initialiser cet attribut dans le constructeur avec `nom`.
|
@ -4,7 +4,34 @@ public class Fibonacci {
|
|||||||
|
|
||||||
public static final void main(String[] args) {
|
public static final void main(String[] args) {
|
||||||
afficher("Fibonacci");
|
afficher("Fibonacci");
|
||||||
|
/*
|
||||||
|
int valeurPrecedente=0;
|
||||||
|
int valeur = 1;
|
||||||
|
|
||||||
|
afficher(valeurPrecedente);
|
||||||
|
|
||||||
|
|
||||||
|
while (valeur<=100){
|
||||||
|
afficher(valeur);
|
||||||
|
int nouvelleValeur = valeur+valeurPrecedente;
|
||||||
|
valeurPrecedente=valeur;
|
||||||
|
valeur=nouvelleValeur;
|
||||||
|
|
||||||
|
|
||||||
|
}
|
||||||
|
*/
|
||||||
|
|
||||||
|
afficher(0);
|
||||||
|
calculer(0, 1);
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
public static final void calculer(int valeurPrecedente,int valeur){
|
||||||
|
if (valeur<=100){
|
||||||
|
afficher(valeur);
|
||||||
|
int nouvelleValeur=valeur+valeurPrecedente;
|
||||||
|
calculer(valeur,nouvelleValeur);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
|
12
Isbn.java
Normal file
12
Isbn.java
Normal file
@ -0,0 +1,12 @@
|
|||||||
|
import static utils.Utils.*;
|
||||||
|
|
||||||
|
public class Isbn {
|
||||||
|
|
||||||
|
public static final void main(String[] args) {
|
||||||
|
afficher("ISBN");
|
||||||
|
|
||||||
|
// exemple: 978-2-3793-1012-6
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
25
Romain.java
25
Romain.java
@ -9,31 +9,6 @@ public class Romain {
|
|||||||
}
|
}
|
||||||
|
|
||||||
public static int convertirEnDecimal(char[] romain) {
|
public static int convertirEnDecimal(char[] romain) {
|
||||||
int cur = 0;
|
|
||||||
int prec = 0;
|
|
||||||
int dec = 0;
|
|
||||||
for (int i = 0; i < romain.length; i++) {
|
|
||||||
prec = cur;
|
|
||||||
cur = asInt(romain[i]);
|
|
||||||
if (prec<cur) {
|
|
||||||
dec -= prec;
|
|
||||||
} else {
|
|
||||||
dec += prec;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
dec+=cur;
|
|
||||||
return dec;
|
|
||||||
}
|
|
||||||
|
|
||||||
public static int asInt(char c) {
|
|
||||||
switch (c) {
|
|
||||||
case 'I':
|
|
||||||
return 1;
|
|
||||||
case 'V':
|
|
||||||
return 5;
|
|
||||||
case 'X':
|
|
||||||
return 10;
|
|
||||||
}
|
|
||||||
return 0;
|
return 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -69,7 +69,6 @@ public class Utils {
|
|||||||
.collect(Collectors.joining(" "));
|
.collect(Collectors.joining(" "));
|
||||||
System.out.println(str);
|
System.out.println(str);
|
||||||
}
|
}
|
||||||
System.out.print(' ');
|
|
||||||
}
|
}
|
||||||
public static final void afficherTabInt(int... args) {
|
public static final void afficherTabInt(int... args) {
|
||||||
if (args == null) {
|
if (args == null) {
|
||||||
@ -81,7 +80,6 @@ public class Utils {
|
|||||||
.collect(Collectors.joining(" "));
|
.collect(Collectors.joining(" "));
|
||||||
System.out.println(str);
|
System.out.println(str);
|
||||||
}
|
}
|
||||||
System.out.print(' ');
|
|
||||||
}
|
}
|
||||||
|
|
||||||
public static int lireEntier() {
|
public static int lireEntier() {
|
||||||
|
Loading…
Reference in New Issue
Block a user