0
votes

Comment retourner la valeur du compte de ma boucle de mon temps en java

Je suis nouveau pour coder et je suis tenu d'avoir une déclaration de retour, mais je me débatte sur la façon de retourner les valeurs de mon compte de ma boucle. Je mets un lien d'image de ce que je reçois plus mon code est ci-dessous.

Aussi j'ai ajouté une impression de "facteur de nombre de nombre" + compte pour que je puisse voir quel compte fait pendant la boucle tandis que. Ce que je veux vraiment faire, c'est de renvoyer ces valeurs afin que je touche à exécuter ces valeurs et que seules ces valeurs apparaissent.

Voici mon code: xxx

Ma sortie actuelle est la suivante:

1 est le facteur de nombre

5 est le facteur de nombre

25 est le facteur de nombre

26

  • je ne plie que system.out.println (comptage + "est le facteur de numéro"); CAR Je veux voir quelle valeur de mon compte est, maintenant je ne veux pas revenir au compte; Parce que cela me donne juste 26, je veux juste retourner 1, 5 et 25. Parce que ces chiffres sont tous des facteurs de 25; Une fois que je peux faire cela, je supprimerai mon système.out.println (compte + "est le facteur de numéro"); ligne de code parce que ce n'est pas nécessaire. J'espère que cette question ait du sens

    sortie souhaitée

    1

    5

    25


4 commentaires

Veuillez ajouter votre sortie actuelle et désirée.


Ma sortie actuelle est la suivante: 1 Le facteur du numéro 5 est le facteur du numéro 25 est le facteur de la sortie souhaitée 26: 1 5 25


Pour une raison quelconque, je ne peux pas taper ou copier coller ma sortie dans une vue plus compréhensible et réaliste, j'ai ajouté des résultats dans la question originale et il est assez proche de ce que je vois à l'écran, j'espère que vous pouvez le voir là-bas et cela aide.


Une fonction de Java peut ne renvoyer qu'une seule valeur / objet. Si vous souhaitez renvoyer plusieurs valeurs d'une fonction, vous devez créer une collection de toutes les valeurs et renvoyer cela.


4 Réponses :


0
votes

retour est comme la sortie de votre fonction. Dans le code, vous avez dit retour 0, donc quoi que ce soit, il ne s'agira que 0. Changez-le à Retour Nombre; est la façon dont vous le faites.


0 commentaires

0
votes

Il suffit de renvoyer le compte de la fin de la méthode comme suit

public static int printFactors(int number) {
    if (number < 1) {
        System.out.println("Invalid Value ");
    }

    int count = 0;
    while (count <= number) {
        count++;

        if (number % count == 0) {
            System.out.println(count + " is factor of number ");
            continue;
        }
    }
    return count;
}


1 commentaires

Veuillez regarder ma question que je viens de le mettre à jour, merci d'avoir essayé d'aider!



0
votes

Si vous souhaitez renvoyer toutes les valeurs, vous devez utiliser une certaine collection, veuillez vérifier ci-dessous le code

package allFactors;

import java.util.ArrayList;
import java.util.List;

public class AllFactors {

public static void main(String[] args) {
    System.out.println(printFactors(32));
}

public static List<Integer> printFactors(int number) {
    if (number < 1) {
        System.out.println("Invalid Value ");
    }
    List<Integer> factors = new ArrayList<>();
    int count = 0;
    while (count <= number) {
        count++;

        if (number % count == 0) {
            factors.add(count);
            System.out.println(count + " is factor of number ");
        }
    }
    return factors;
 }
}


0 commentaires

1
votes

Ici, vous voulez retourner tous les facteurs du nombre: Vous pouvez donc utiliser la liste pour stocker tous les facteurs, puis renvoyer cette liste et l'imprimer, code est-ce -

    package allFactors;

    public class AllFactors {
       public static void main(String[] args) {
           printFactors(32).forEach(System.out::println);
       }

       public static List<Integer> printFactors(int number) {
           if (number < 1) {
                System.out.println("Invalid Value ");
           }
           List<Integer> all_factors = new ArrayList<>();
           int count = 0;
           while (count <= number) {
               count++;
               if (number % count == 0) {
                   all_factors.add(count);
                   System.out.println(count + " is factor of number ");
                   continue;
               }
           }
          return all_factors;
      }
    }


0 commentaires