Answer:

    if (  cash >= price )

You (hopefully) picked a relational operator that yields true when the user CAN pay for the sweater.

Reverse Logic

Here is what happens for one run of the program:

How much do you have, in pennies?
5000
You can buy the sweater

The true block was executed because the boolean expression was true. Here is another run of the program:

How much do you have, in pennies?
2000
You can't buy the sweater
You need $24.95 more.

The false block executed because the boolean expression was false.

Boolean expressions are always true or false. By using the correct relational operator (==, >, <, >=, <=, != ) you ask a question that is true when you want the true branch to be executed. If the statements inside of the two branches are reversed you must change the relational operator for the program to do the same thing as before.

Here is the program again, with the statements of the true and false branches switched.

import java.util.Scanner;
class SweaterPurchase
{
  public static void main (String[] args)
  { 
    final int price = 4495;    // price in cents

    Scanner scan = new Scanner( System.in );
 
    int cash;                       

    System.out.println("How much do you have, in pennies?");
    cash   = scan.nextInt();     
    
    if (   )
    {
      System.out.println("You can't buy the sweater" );
      System.out.println("You need $" + 
        (price-cash)/100 + "." + (price-cash)%100 + " more." );
    }
    else
      System.out.println("You can buy the sweater" );

  }
}

QUESTION 8:

What boolean expression should fill the blank?