Приветствую вас на этом сообществе. Я новичок в Java. Это не домашнее задание, я очень увлечен программированием, и я действительно хочу узнать больше. Я застрял в одном упражнении.Как проверить, угадываются ли три номера?
В принципе, мне нужно создать простую лотерею. Пользователь должен ввести одно число от 0 до 999, трехзначное число.
- Если предположение точно такой же, приз составляет 10.000 $,
- Если предположение о том же (цифры угаданных но не по порядку) приз 3000 $
- Если догадка на самом деле не то же самое (цифры догадываются == 1) приз составляет 1000 $.
Вот мой код: Я не знаю, как иметь дело с условиями 2 и 3. Могу ли я получить какой-либо намек или комментарий?
import java.util.Scanner;
public class Test {
public static void main(String[] args) {
Scanner input = new Scanner(System.in);
System.out.println("Please enter a three digit number");
int guess = input.nextInt();
//generate number:
int lottery = (int)(Math.random() * 1000);
if ((guess > 999) || (guess < 100)) {
System.out.println("The number is not a three digit number. The system will exit NOW.");
System.exit(1);
}
else {
// extract digits from lottery number
int lotteryDigit1 = lottery/100;
int lotteryDigits = lottery % 100;
int lotteryDigit2 = lottery/10;
int lotteryDigit3 = lottery % 10;
// extract digits from guessed number
int guessDigit1 = guess/100;
int remainingDigits = guess % 100;
int guessDigit2 = guess/10;
int guessDigit3 = guess % 10;
System.out.println("The lottery number is: " + lottery);
// check the guess:
if (guess == lottery) {
System.out.println("Exactly what the number was.");
}
else if {
// digits guessed, but not in exact order (eg. 332 = 233)
}
else if {
// only one digit is guessed (eg. 332 = 442)
}
}
}
}
Могу ли я прокомментировать код? Является ли это удобочитаемым или ужасно написанным? У меня действительно нет подсказки, так как я действительно новичок в программировании. Благодарю.
Почему в downvoting , люди? –
SO не предназначен для просмотра кода; вы могли бы попробовать codereview.stockexchange.com. – GhostCat
@GhostCat, похоже, не просит пересмотра; похоже, спрашивает: «Как мне написать следующий бит кода?» ... хотя ... на самом деле, во втором чтении этот вопрос, кажется, делает оба одновременно. В любом случае, Code Review Stack Exchange будет отвечать на вопросы, содержащие только рабочий код, поэтому сначала необходимо будет реализовать функциональность. – Pimgd