Besoin d'aide pour l'écriture des nombres dans l'ORDRE Inverse
J'ai besoin d'un peu d'aide dans cette tâche qui m'ai été donné. Ne pas demander à quelqu'un de faire mon travail, mais je suis vraiment honnêtement, coincé sur la façon même de le faire.
Je suis censé écrire un programme qui demande à l'utilisateur de saisir 10 numéros et puis les écrire tous les nombres dans l'ordre inverse.
Exemple:
Entrez 10 Chiffres: 23 89 21 55 67 89 99 13 98 78
L'Ordre Inverse: 78 98 13 99 89 67 55 21 89 23
Jusqu'à présent tout ce que j'ai est de savoir comment obtenir les entrées de l'utilisateur. Si quelqu'un peut me pousser dans la bonne direction, je lui en serais très reconnaissant!
import java.util.*;
public class ReverseNumbers
{
public static void main(String[] args)
{
Scanner keyboard = new Scanner(System.in);
int[] values;
values = new int[10];
//Ask the user to enter 10 integers
System.out.println("Please enter 10 numbers:");
for (int i = 0; i< values.length; i++)
{
values[i] = keyboard.nextInt();
}
int[] reverseNums;
reverseNums = new int[10];
for (int i = (values.length -1); i>= 0; i--)
{
reverseNums[ reverseNums.length -1 -i ] = values[ i ];
System.out.println( reverseNums[ i ] );
}
}
}
On dirait que tu es sur la bonne voie, ce qu'il fait de mal?
Vous êtes sur la bonne voie, mais pense: pourquoi avez-vous besoin d'un autre tableau pour stocker l'inverse des valeurs? Pourquoi ne pas simplement une boucle sur votre
Juste un commentaire de cette ligne reverseNums[ reverseNums.longueur -1 -i ] = valeurs[ i ]; impression des valeurs[i]
Vous êtes sur la bonne voie, mais pense: pourquoi avez-vous besoin d'un autre tableau pour stocker l'inverse des valeurs? Pourquoi ne pas simplement une boucle sur votre
values
tableau en sens inverse, l'impression que vous allez?Juste un commentaire de cette ligne reverseNums[ reverseNums.longueur -1 -i ] = valeurs[ i ]; impression des valeurs[i]
OriginalL'auteur user2268587 | 2013-04-11
Vous devez vous connecter pour publier un commentaire.
Si vous ne voulez pas stocker l'inversion des valeurs
C'est drôle que j'ai eu un upvote quand j'ai donné le même contenu, comme un commentaire et puis un downvote quand je lui donne une réponse 😛
Merci beaucoup! 😀 Ça marche!!!
ur la bienvenue! s'ils ont permis de bien vouloir upvote/accepter.
Espérons que cela a fonctionné tout de lol Serait upvoted mais je ne peux pas :/
OriginalL'auteur Abi
Votre code semble bon pour la lecture des entrées dans
values
. Maintenant, vous pouvez passer en boucle ce tableau en sens inverse et d'imprimer les valeurs:Pensez-y, quand
i == 0
, il permet d'imprimervalues[9]
depuis 10 - 0 - 1 = 9. À la fin, quandi == 9
, il permet d'imprimervalues[0]
depuis 10 - 9 - 1 = 0.Comme vous pouvez le voir, il n'est pas nécessaire pour l'extra
reverseNums
tableau.PS: Si vous le souhaitez, vous pouvez combiner
int[] values;
etvalues = new int[10];
en une seule ligne:int[] values = new int[10];
OriginalL'auteur tboyce12
Lire dans l'ensemble de la ligne de chaîne à l'aide de
Scanner.nextLine()
, puis de le diviser en un tableau à l'aideString.split(" ");
. Après cela, vous pouvez simplement effectuer une itération à partir de la fin du tableau d'aller en arrière et imprimer les numéros.OriginalL'auteur Kyle Saltzberg
Si ce n'est pas une affectation, alors pourquoi ne pas essayer d'utiliser http://commons.apache.org/proper/commons-lang/ bibliothèque
En fait la première chose qu'il dit c'est que c'est une affectation.
mais si la question est cherché dans google, la plupart des cas, il l'habitude parce que quelqu'un a une mission. Il est utile pour la plupart de garder cela comme une réponse.
Je suis en désaccord, c'est typique d'un devoir à la maison.
OriginalL'auteur karthick
Je pense que ton code est de créer le tableau correctement. Vous êtes juste l'impression de sortir les chiffres dans l'ordre d'origine parce que votre deuxième boucle for est une itération de plus vers l'arrière. Vous pouvez voir le résultat correct en ajoutant la déclaration ci-dessous après le dernier tour de boucle:
Vous pouvez également effectuer la tâche complète avec une seule itération:
OriginalL'auteur Adriaan Koster
De l'inverser:
ce qui est "pas correct" à ce sujet?
L'Op ne voulais pas l'inverse l'ordre naturel des nombres, mais à l'inverse de l'ordre d'entrée. Donc 2,5,3 -> 3,5,2 (pas 5,3,2)
na pas remarqué. Fixe. (Supprimé l'appel à
Arrays.sort()
OriginalL'auteur Bohemian