Quels arguments pour appeler ma procédure
Bonjour tout le monde,
je réalise un petit programme pour un devoir. Après avoir testé chacune de mes fonctions séparément, j'essaye en vain de compiler ceci :
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83
| public class exo {
public static void main (String [] args){
String fr;
fr = ("abcdefghijklmnopqrstuvwxyz.");
String mor = ("._;_...;_._.;_..;.;.._.;__.;....;..;.___;_._;._..;__;_.;___;.__.;__._;._.;...;_;.._;..._;.__;_.._;_.__;__..; ; ;");
String [] tabmor = mor.split(";");
menu();
}
public static void francais(String fr, String [] tabmor){
Terminal.ecrireStringln("rentre un truc");
String user = Terminal.lireString();
user = user.replace('à','a');
user = user.replace('ç','c');
user = user.replace('é','e');
user = user.replace('è','e');
user = user.replace('î','i');
user = user.replace('ö','o');
user = user.toLowerCase();
int l = user.indexOf('.');
for (int i=0; i<= l-1; i++){
for (int j=0; j<= 26; j++){
if (user.charAt(i) == fr.charAt(j)){
Terminal.ecrireString(tabmor[j]+" ");
}
}
}
Terminal.sautDeLigne ();
Terminal.ecrireStringln("Voulez vous faire une autre conversion?");
int q;
q = Terminal.lireInt();
if (q == '1'){
francais(fr, tabmor);
}
else {
menu();
}
}
public static void morse(String fr,String [] tabmor){
Terminal.ecrireStringln("rentre un truc");
String user = Terminal.lireString();
String [] tuser = user.split(" ");
int l = tuser.length;
int q;
for (int i=0; i<= l-1; i++){
for (int j=0; j<= tabmor.length -1; j++){
if (tuser [i].equals (tabmor [j])){
Terminal.ecrireChar(fr.charAt(j));
}
}
}
Terminal.sautDeLigne();
Terminal.ecrireStringln("Voulez vous faire une autre conversion?");
q = Terminal.lireInt();
if (q == '1'){
morse(fr, tabmor);
}
else {
menu();
}
}
public static void menu(){
Terminal.ecrireStringln ("*** MENU GENERAL ***");
Terminal.sautDeLigne ();
Terminal.sautDeLigne ();
Terminal.ecrireStringln ("1- Convertir une phrase de français en morse.");
Terminal.ecrireStringln ("2- Convertir une séquence morse en français.");
Terminal.ecrireStringln ("3- Sortir du programme.");
Terminal.sautDeLigne ();
Terminal.sautDeLigne ();
Terminal.ecrireStringln ("Votre choix:");
int c;
c=Terminal.lireInt();
if ( c == '1'){
francais( fr, tabmor);
}
else if ( c == '2'){
morse(fr, tabmor);
}
else if (c=='3'){
Terminal.ecrireStringln ("Merci et à bientôt.");
}
}
} |
Le problème d'après le terminal est qu'à l'appel des fonctions francais et morse il ne connait pas les variable mise en arguments... (fr, tabmor) qui sont pourtant crée et initialisé au début du main...
Je pense que le problème se situe autre part.. mais je sèche complétement..
Merci de prendre le temps de regarder ça :)