How to print out an array in reverse order?

Question:
How to print out an array in reverse order?

Code:
public class MyArray {
 
   public static void main(String[] args) {
 
      int[] numbers = {1,2,3,4,5,6,7,8,9,10};
 
      // print forward
      for ( int i = 0; i < numbers.length; i++ ) {
         System.out.print(numbers[i] + " ");
      }
      System.out.println();
 
      // print reverse order
      for ( int i = numbers.length-1; i >= 0 ; i--) {
         System.out.print(numbers[i] + " ");
      }
      System.out.println();
   }
}

Output:
$ java MyArray
1 2 3 4 5 6 7 8 9 10 
10 9 8 7 6 5 4 3 2 1 

Print out all vowels contained in the string.

Question:
How to read string and print out all vowels contained in the string.

Code:
import java.util.Scanner;
 
public class GetVowels {
  public static void main(String[] args) {
 
    String vowels = "AEIOUaeiou";
    System.out.print("Enter a string: ");
    Scanner in = new Scanner(System.in);
    String str = in.nextLine();
    for(int i=0;i<str.length();i++){
      String onechar = str.substring(i,i+1);
      if( vowels.indexOf(onechar) != -1){
        System.out.print(onechar);
      }
    }
    System.out.println();
  }
}

Output:
$ java GetVowels
Enter a string: abcDEFghi         
aEi

How to validate an input is a positive number?

Question:
How to validate an input is a positive number?

Code:
import java.util.*;
 
public class ReadInt {
 
   public static void main(String[] args) {
 
      Scanner sc = new Scanner(System.in);
 
      while(true) {
         try {
 
            System.out.print("Enter Positive Number: ");
            int i = sc.nextInt();
            if(i > 0){
               System.out.println("You entered: " + i);
               System.out.println("Thank you");
               break;
            } else {
               System.out.println("Negative Number");
            }
 
         } catch (InputMismatchException e) {
            System.out.println("You did not enter a Number.");
            sc.nextLine(); 
         }
      }
   }
}

Output:
$ java ReadInt 
Enter Positive Number: hello
You did not enter a Number.
Enter Positive Number: -222
Negative Number
Enter Positive Number: 100
You entered: 100
Thank you

Validating that a users input is a number and within a range.

Question:
How do I validate an input ensuring a user enters a number in the range 1-10?

Answer:
See example:

Code:
import java.util.*;
 
public class ReadInt {
 
   public static void main(String[] args) {
 
      Scanner sc = new Scanner(System.in);
 
      int number = 0;
      while (true) {
         try {
            System.out.print("Enter number betwen 1 and 10: ");
            number = sc.nextInt();
            if( number >= 1 && number <= 10){
              break;
            }
            System.out.println("Out of range.");
 
         } catch (InputMismatchException e) {
            System.out.println("You did not enter a Integer.");
            sc.nextLine(); // needed to clear buffer
         }
      }
      System.out.println("You entered: " + number);
   }
}

Output:
$ java ReadInt
Enter number betwen 1 and 10: 11
Out of range.
Enter number betwen 1 and 10: a
You did not enter a Integer.
Enter number betwen 1 and 10: 12
Out of range.
Enter number betwen 1 and 10: 10
You entered: 10

Finding the lowest and highest numbers in an array of ints?

Question:
How to find the lowest and highest numbers in an array of ints?

Answer:
Use a for loop.

Code:
import java.util.*;
 
public class LowestNumber {
   public static void main(String[] args) {
 
      int[] array = new int[15];
 
      // populate array
      Random r = new Random();
      for(int i=0;i<array.length;i++){
         array[i]= r.nextInt(1000);
      }
      System.out.println("Contents: " + Arrays.toString(array));
 
      // find smallest and largest numbers
      int small = array[0];
      int large = array[0];
      for(int i=0;i<array.length;i++){
         if(array[i] <= small){
            small = array[i];
         }
         if(array[i] >= large){
            large = array[i];
         }
      }
      System.out.println("Smallest number: " + small);
      System.out.println("Largest number: " + large);
   }
}

Output:
$ java LowestNumber
Contents: [489, 283, 334, 331, 665, 643, 280, 100, 184, 642, 730, 560, 930, 517, 24]
Smallest number: 24
Largest number: 930

Validate a SSN without using loops

Question:
Looking for a program to validate a SSN without using loops.

A valid input would be: 123-45-6789

Answer:
See example.

Code:
import java.util.*;
 
public class SSN {
   public static void main(String args[]){
 
      boolean valid = false;
 
      System.out.print("Enter SSN: ");
      Scanner sc = new Scanner(System.in);
      String ssn = sc.next();
      System.out.println("Input: "+ssn);
 
      if(ssn.length()==11) {
         if( (ssn.charAt(3)=='-') & (ssn.charAt(6)=='-') ) {
            String str = ssn.replaceAll("-", "");
            if (str.matches("[0-9]+") & str.length()==9) {
               valid = true;
            }
         }
      }
 
      System.out.println("valid: " + valid);
   }
}

Output:
$ java SSN 
Enter SSN: 123-12-1234
Input: 123-12-1234
valid: true

$ java SSN 
Enter SSN: 123-123-123
Input: 123-123-123
valid: false

$ java SSN 
Enter SSN: 123-12-123a
Input: 123-12-123a
valid: false

Program that provides the minimum amount of change for a given amount in US currency.

Question:
I'm looking for a java program that can give the minimum change for a given amount in US currency.

Answer:
See example

Code:
import java.util.*;
import java.math.*;
 
public class MakeChange {
 
   public static void main(String[] args) {
 
      Scanner sc = new Scanner(System.in);
 
      // example: 39.99
      System.out.print("Enter total amount: ");
      double amount =  sc.nextDouble();
 
      // Multiple by 100 so all the math can handle ints
      int remainder = (int)(amount * 100);
 
      int twentys =  remainder / 2000 ;
      remainder = remainder - (twentys * 2000);
 
      int tens =  remainder / 1000 ;
      remainder = remainder - (tens * 1000);
 
      int fives =  remainder / 500 ;
      remainder = remainder - (fives * 500);
 
      int dollars =  remainder / 100 ;
      remainder = remainder - (dollars * 100);
 
      int quarters =  remainder / 25 ;
      remainder = remainder - (quarters * 25);
 
      int dimes =  remainder / 10 ;
      remainder = remainder - (dimes * 10);
 
      int nickels =  remainder / 05 ;
      remainder = remainder - (nickels * 05);
 
      int pennies =  remainder / 01 ;
 
      System.out.println("Twentys: " + twentys); 
      System.out.println("Tens: " + tens); 
      System.out.println("Fives: " + fives); 
      System.out.println("Dollars: " + dollars); 
      System.out.println("Quarters: " + quarters); 
      System.out.println("Dimes   : " + dimes); 
      System.out.println("Nickels : " + nickels); 
      System.out.println("Pennies : " + pennies); 
  }
}

Output:
$ java MakeChange 
Enter total amount: 39.99
Twentys: 1
Tens: 1
Fives: 1
Dollars: 4
Quarters: 3
Dimes   : 2
Nickels : 0
Pennies : 4