Deviner un numéro de programme avec Java
Je suis en train de créer un programme en Java, dans lequel l'ordinateur au hasard devine un nombre entre 1 et 100 et permet à l'utilisateur de deviner le nombre.
Si le nombre est inférieur au nombre aléatoire le programme devrait dire: lower!
et s'il est supérieur, le programme devrait dire: higher!
Si l'utilisateur devine le bon numéro, il faut dire congratulations you guessed the right number in X amount of tries
.
C'est ce que j'ai à ce jour, toute aide serait appréciée!
import java.util.Scanner;
public class QuestionOne
{
public static void main(String args[])
{
Scanner keyboard = new Scanner(System.in);
int a = 1 + (int) (Math.random() * 99);
int guess;
System.out.println("I am thinking of a number from 1 to 100 ... guess what it is ?");
guess = keyboard.nextInt();
while(guess != a){
if (guess > a)
{
System.out.println("lower!");
}
else if (guess < a)
{
System.out.println("higher!");
}
else
{
System.out.println("Congratulations. You guessed the number with X tries!");
}
}
}
}
- Quelle est votre question ? Vous utilisez une boucle infinie ?
- Vous expliquer ce que vous essayez de faire, et tout, mais vous n'avez jamais réellement dire ce que vous avez besoin d'aide avec. Avez-vous un problème? Ou êtes-vous juste d'être paresseux et ne veulent pas finir?
- Assez sûr que vous juste besoin de placer le code d'entrée pour le nombre dans la boucle
- oh désolé, eh bien im juste d'avoir des ennuis avec la fin où il est dit félicitations. Vous l'aurez deviné, le nombre X de tente. Je ne suis pas sûr de la façon de compter combien de fois la boucle est répétée. @BobbyD17
- Je ne suis pas sûr de la façon de compter la boucle de la fin de la partie où il est dit félicitations, vous l'aurez deviné dans X tente. Je ne suis pas sûr de la façon de déterminer la valeur de X @ZouZou
- ajouter une variable de compteur à l'extérieur de la boucle et de l'incrémenter à chaque itération de la boucle.
Vous devez vous connecter pour publier un commentaire.
Vous n'êtes pas obtenir une autre entrée ou le maintien de compte. Essayez cette
Sortie
J'ai oublié de vous obtenir un nouveau type int à partir du scanner à chaque tour de boucle 🙂
edit : je suis en train de m'ennuyer... Ajouter le compteur 😉
else
au lieu deelse if (guess < a)
Essayer, j'espère que ça aidera.
public class BinarySearch
Vous devez déplacer les félicitations de la partie de la boucle while. Si vous devinez le nombre exact, il n'entrera pas dans la boucle et par conséquent à ne jamais afficher cette déclaration. Ce serait plus évident si vous avez fixé votre indentations. Sa mauvaise forme pour avoir tout au même niveau d'indentation.
Bien j'ai traversé ce sujet et que vous souhaitez partager le code, je l'ai trouvé trop depuis qu'il a été un plaisir question.Cela peut même être utilisé comme un simple jeu.ci-dessous est la psuedocode pour elle 😀
}