Files
DEV/DEV3.2/Recursiviote/Tableaux.java
2024-10-17 12:16:23 +02:00

63 lines
1.9 KiB
Java

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));
}
}
}