fin des tp
This commit is contained in:
63
DEV3.2/Recursiviote/Tableaux.java
Normal file
63
DEV3.2/Recursiviote/Tableaux.java
Normal file
@@ -0,0 +1,63 @@
|
||||
import java.util.Arrays;
|
||||
|
||||
public class Tableaux{
|
||||
public static int[] remplir_tab(int val, String[] argv, int[] tab) {
|
||||
if (argv.length == val) {
|
||||
return tab;
|
||||
} else {
|
||||
tab[val] = Integer.parseInt(argv[val]);
|
||||
val++;
|
||||
return remplir_tab(val, argv, tab);
|
||||
}
|
||||
}
|
||||
|
||||
public static int pair_tab(int val, int pair, int[] tab) {
|
||||
if (tab.length == val) {
|
||||
return pair;
|
||||
} else {
|
||||
if (tab[val] % 2 == 0)
|
||||
pair++;
|
||||
val++;
|
||||
return pair_tab(val, pair, tab);
|
||||
}
|
||||
}
|
||||
|
||||
public static int max_tab(int val, int max, int[] tab) {
|
||||
if (tab.length == val) {
|
||||
return max;
|
||||
} else {
|
||||
if (tab[val] > max)
|
||||
max = tab[val];
|
||||
val++;
|
||||
return max_tab(val, max, tab);
|
||||
}
|
||||
}
|
||||
|
||||
public static int[] inverse_tab(int val, int[] tab, int[] inv_tab) {
|
||||
if (tab.length == val) {
|
||||
return inv_tab;
|
||||
} else {
|
||||
inv_tab[val] = tab[tab.length-1-val];
|
||||
val++;
|
||||
return inverse_tab(val, tab, inv_tab);
|
||||
}
|
||||
}
|
||||
|
||||
public static void main(String[] argv){
|
||||
if (argv.length < 1){
|
||||
System.err.println("il faut un nombre au minimum pour le tableau");
|
||||
} else {
|
||||
int[] tab = new int[argv.length];
|
||||
int[] inv_tab = new int[argv.length];
|
||||
int val = 0;
|
||||
int pair = 0;
|
||||
int max = 0;
|
||||
tab = remplir_tab(val, argv, tab);
|
||||
System.out.println(Arrays.toString(tab));
|
||||
System.out.println("nombre de pair ="+pair_tab(val, pair, tab));
|
||||
System.out.println("nombre le plus grand ="+max_tab(val, max, tab));
|
||||
inv_tab = inverse_tab(val, tab, inv_tab);
|
||||
System.out.println(Arrays.toString(inv_tab));
|
||||
}
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user