**7.5 (Print distinct numbers) Write a program that reads in ten numbers and displays the number of distinct numbers and the distinct numbers separated by exactly one space (i.e., if a number appears multiple times, it is displayed only once). (Hint: Read a number and store it to an array if it is new. If the number is already in the array, ignore it.) After the input, the array contains the distinct numbers. Here is the sample run of the program: Enter ten numbers: 1 2 3 2 1 6 3 4 5 2 The number of distinct number is 6 The distinct numbers are: 1 2 3 6 4 5
import java.util.Scanner; public class ProgrammingEx7_5 { public static void main(String[] args) { Scanner input = new Scanner(System.in); int[] numbers = new int[10]; int number, i = 0, j, k = 0; System.out.print("Enter ten numbers:"); while (k < 10) { number = input.nextInt(); k++; for (j = 0; j <= i; j++) { if (number == numbers[j]) { break; } } if (j - i == 1) { numbers[i] = number; i++; } } System.out.println("The number of distinct number is " + i); System.out.print("The distinct numbers are:"); for (int j2 = 0; j2 < i; j2++) { System.out.print(numbers[j2] + " "); } } }
Thank you for this pretty solution
ReplyDelete