Код, над которым я работал, не работает в 100% случаев. Я продолжаю заставлять программу пытаться создать несколько целых чисел для одного целого числа в массиве. В результате мне нужен штифт с номером. Когда я запускаю программу, иногда число - это то, что распечатывается, а в других случаях программа решает не равняться тому, что было напечатано ранее.
Например, это результат
Pin: 0 1 2 3 4 5 6 7 8 9
Число: 2 2 3 2 3 2 3 2 1 3
Введите пароль Код 32345
Пароль должен быть 23232
Однако этот ответ может или не может работа.
import java.util.*;
import java.text.*;
import java.lang.*;
public class Authenticate_TylerD {
public static void main(String[] args){
Scanner scan = new Scanner (System.in);
//arrays
int[] pin = {3, 2, 3, 4, 5};
int[] num = new int[10];
int userIn;
int[] userIn2 = new int [5];
//Numbers for pin
System.out.println("Pin: 0 1 2 3 4 5 6 7 8 9");
System.out.print("Num: ");
//shou
for(int i = 0;i<=9;i++){
num[i] = (int)(Math.random()*3)+1;
System.out.print(num[i] + " ");
for(int j=0;j<5;j++){
if(i == pin[j]){
pin[j] = num[i];
//System.out.print(num[i] + "<-- RanNum ");
}
else{
continue;
}
}
}
System.out.println("\n------------------------------");
System.out.println("Enter the password");
userIn = scan.nextInt();
for(int i = 4;i>=0;i--){
userIn2[i] = userIn%10;
userIn = userIn/10;
System.out.print(pin[i]);
System.out.print(userIn2[i]);
if(userIn2[i] != pin[i]){
System.out.print("\nIncorrect PIN");
System.exit(0);
}
else{
System.out.print("Correct PIN ");
}
}
}
}
Любая помощь будет принята с благодарностью. PS Нет ru sh, чтобы ответить на этот вопрос, напишите, когда у вас будет такая возможность.