En ce momentGenshin ImpactValhallaBreath of the wildAnimal CrossingGTA 5Red dead 2
Liste des sujets
[Urgent] missing return statement !Merci
[Kakuzu]2
Niveau 34
12 novembre 2013 à 22:49:34
Bonsoir,
j'ai un soucis sur mon programme. Voici la consigne :
Écrire une fonction qui renvoie l'indice d'une valeur si elle est dans le tableau ; Si elle apparaît plusieurs fois dans le tableau, renvoyer le numéro de la première case dans laquelle elle apparaît, et si elle n'est pas contenue dans le tableau renvoyer le nombre -1 (On fait ici une recherche séquentielle dans un tableau non encore trié)
Voici mon programme (en JAVA'S COOL, c'est du java simplifié mais la logique est la même à peu prêt) :
Je sèche vraiment, j'ai fait d'autres programmes avant et même soucis
Pseudo supprimé12 novembre 2013 à 23:30:55
Si t'entres pas dans le if ligne 15 ou 19, rien n'est retourné. Il faut un return dans tous les cas.
[Kakuzu]2
Niveau 34
12 novembre 2013 à 23:35:51
je comprends pas, le if ligne 15 a des accolades jusqu'à la ligne 22. Donc en faite le if ligne 15 dure jusqu'à la ligne 22 et dedans j'ai mis un return a la fin
[Kakuzu]2
Niveau 34
12 novembre 2013 à 23:42:30
Ah c'est bon ça marche, j'ai mis des return 0 vu qu'il voulait que je mette un int mais le programme marche, merci infiniment !
chris_27
Niveau 10
13 novembre 2013 à 00:07:52
"j'ai mis des return 0 vu qu'il voulait" moralité, ça allait plus vite d'allumer son cerveau et de corriger le problème soi-même que de venir demander de l'aide.
godrik
Niveau 30
13 novembre 2013 à 00:20:22
(Cte vielle fuite de memoire dans cette fonction. Il est vraiment temps que les gens enseigne le C++ proprement...)
chris_27
Niveau 10
13 novembre 2013 à 00:23:44
C'est du java's cool, du coup je pense que ça ne fuitera pas. Mais c'est clair que le jour où l'OP passera à du C/C++, ça va faire mal.
godrik
Niveau 30
13 novembre 2013 à 00:46:42
(oh, my bad)
dark_drow
Niveau 15
13 novembre 2013 à 11:58:22
Vous parlez du tableau ? C'est sur que si le langage le permet je suppose que c'est mieux de faire int test[] = {1,2,3}; - m'enfin n'ayant jamais fouiné dans la jvm je sais pas si ça fait une diff -
Attaque2Chatons
Niveau 10
13 novembre 2013 à 15:16:40
Je connaissais pas ce language, ça risque pas de vous faire prendre des mauvais réflèxs ce truc?
DeeplyDead
Niveau 9
13 novembre 2013 à 16:26:30
int tab [] = new int [] {6, 7, 2, 4, 1, 9, 3, 5};
« Tiens, toi, t’es un programmeur Java. »
Pas de delete [] correspondant.
« Ho oui, toi, t’es un programmeur Java. »
dark_drow
Niveau 15
13 novembre 2013 à 18:20:51
sauf qu'en pratique la syntaxe java c'est plutot int tab [] = {6, 7, 2, 4, 1, 9, 3, 5}; même si les deux marchent
De ce que je vois ça ressemble à un langage algorithmique pur, donc je vois pas quels mauvais réflexes ça pourrait apporter. Au contraire, je trouve ça mieux que le pseudo-code, ça permet de tester là.
dark_drow
Niveau 15
14 novembre 2013 à 13:09:39
la gestion de la mémoire c'est tellement galère quand tu as pas pris l'habitude :/
pseuuuuuuuuuudo
Niveau 10
14 novembre 2013 à 23:31:54
C'est pas une fin en soi la gestion de la mémoire, c'est plus un fardeau qu'autre chose quand on apprend à programmer. Et à titre personnel, j'ai jamais compris en quoi c'était plus dur d'apprendre à gérer la mémoire par la suite, tout ce qu'il y a à retenir c'est que ce qu'on alloue doit être désalloué...
dark_drow
Niveau 15
15 novembre 2013 à 11:24:10
Oui c'est le genre de phrase trouvé sur le SDZ m'enfin c'est un poil plus complexe que ça hin
[-Shana-]
Niveau 10
15 novembre 2013 à 12:59:59
D'ailleurs ton indentation est mal foutue.
pseuuuuuuuuuudo
Niveau 10
15 novembre 2013 à 14:02:02
Bah j'exagère un peu sur le dernier bout de phrase d'accord mais il reste que l'apprentissage de la gestion de la mémoire n'a pas à croiser l'apprentissage de l'algorithmique. Apprendre les deux en parallèle pourquoi pas, mais en même temps c'est même pas logique. Je vois pas ce que le SDZ vient foutre là-dedans au passage.