/ / Changer la boucle pour la méthode récursive

Changer de boucle en méthode récursive - java, data-structures

Pourriez-vous s'il vous plaît m'expliquer comment changer celafor loop to récursive, je sais ce que récursif est, mais j’ai été incapable d’obtenir le nombre d’étoiles à imprimer correctement avec le code car il n’imprimait que la première ligne d’étoiles.

Toute orientation serait appréciée,

Voici mon code actuel:

static void printLine(int n) {
for (int i=0; i<n; ++i) {
System.out.print("*");
}
System.out.println();
}

Réponses:

2 pour la réponse № 1

Googler "comment convertir une boucle en récursion", il existe une réponse similaire iciet un article avec un exemple ici.

Ceci est un gros indice, mais l’idée de base est que vos arguments stockent l’état actuel de la boucle.

for (int i = 1; i <= n; i++)
{
// ....
}

est équivalent à:

private static void PerformAction(int n)
{
if (n > 0)
{
// Do something
PerformAction(n - 1);
}
}

1 pour la réponse № 2

C'est quelque chose que vous devriez être capable de Googleassez facilement, assurez-vous d’essayer de trouver la réponse vous-même avant de demander à la communauté. Cela ne me dérange pas de répondre à des questions comme celle-ci, mais j’ai constaté que vous n’appreniez rien si vous posez la question en premier et que vous regardez plus tard.

private static void printStars(int n)
{

if (n>0){
system.out.println("*");
printStars(n-1);
}
}