Question:
Write a java program that reads 10 numbers from the user, but does not allow the user to enter duplicates.
Code:
import java.util.*;
public class TenNumbers {
public static void main(String[] args) {
Scanner sc = new Scanner(System.in);
Set set = new TreeSet();
do {
System.out.print("Enter number: ");
try {
int i = sc.nextInt();
if (set.contains(i)){
System.out.println("Duplicate.");
} else {
set.add(i);
}
} catch (InputMismatchException e) {
System.out.println("Not a number.");
sc.nextLine();
}
} while (set.size()<10);
System.out.println("set: " + set);
}
}
Output:
$ java TenNumbers
Enter number: 1
Enter number: 2
Enter number: 3
Enter number: 4
Enter number: 5
Enter number: 6
Enter number: 7
Enter number: 8
Enter number: 9
Enter number: ten
Not a number.
Enter number: 9
Duplicate.
Enter number: 10
set: [1, 2, 3, 4, 5, 6, 7, 8, 9, 10]