Besoin d'un peu d'aide svp

Bonjour je suis bloqué a l'épreuve Welcome to GATTACA

Voice mon code :
import java.util.ArrayList;
import java.util.Scanner;

class Main
{
private static int gattaca(int N, String code, int M, String genome)
{

gattaca = genome.IndexOf(code);
if( gattaca != -1) {
return gattaca ;
}
}

public static void main(String args[]) throws java.io.IOException
{
Scanner scanner = new Scanner(System.in);
int N;
String code;
int M;
String genome;

N = scanner.nextInt();
scanner.nextLine();

code = scanner.nextLine();
M = scanner.nextInt();
scanner.nextLine();

genome = scanner.nextLine();

System.out.println(gattaca(N, code, M, genome));
}
}

Et voici les erreurs à la compilation :

javac 1.5.0_14
/tmp/tmp_Tspav15794.java:10: cannot find symbol
symbol : variable gattaca
location: class tmp_Tspav15794
gattaca = genome.lastIndexOf(code);
\^
/tmp/tmp_Tspav15794.java:12: missing return value
return;
\^
2 errors
Erreur de compilation

Je ne comprend pas vraiment mes erreurs, est-il donc possible d'avoir un petite exlication ?

Merci beaucoup

N'aurais tu pas confondu avec le langage pascal pour ta fonction?
Tu n'as pas cree de variable pour stocker ce que tu veux retourner dans ta fonction , de plus , tu utilises un nom deja utilisé: celui de la fonction ( si je me rappelle bien, c'est ce qu'on fait en pascal, mais là ça marche pas...). Donc on va dire que c'est z qui enregistre ce machin.

Ensuite, ( j'ai teste avec ideone ma little correction car je débute en Java \^\^) une autre erreur ( une pitite cette fois) : indexOf et non IndexOf.
Et pour terminer, si genome.indexOf(code) retourne -1, et ben ta fonction ne renvoie rien, et donc Java il est pas content. (surtout que tu t'embêtes pour rien avec ce if(z!=-1) puisque l'énoncé dit "si pas de solutions, alors -1" donc il suffit que tu mettes return z

Après test... Ma correction fonctionne :p .
Donc t'as pas grand chose à modifier ...

Edit: Hihi kikoo lol, j'avais oublie une parenthèse

Et puis la variable sensée récupérer le résultat n'est pas typée.
Tu peux de toutes façons faire plus simple en écrivant directement return genome.indexOf(code);

Répondre au sujet

Vous devez vous enregistrer ou vous connecter pour poster des messages.