Java Java Coin Counter Program: Counting Change with Syntax Errors Help

  • Thread starter Thread starter JaysFan31
  • Start date Start date
  • Tags Tags
    Java
AI Thread Summary
The discussion revolves around a beginner Java programmer seeking help with a program designed to count coins (quarters, dimes, nickels, and pennies). The user is struggling with syntax errors while trying to compile the code in Dr. Java. Key issues identified include incorrect initialization of variables, improper use of semicolons instead of commas, and errors in input handling (using `nextDouble` instead of `nextInt` for pennies). The user also encounters a specific compiler error related to string concatenation in the `System.out.println` statement, where the syntax for combining the string with the variable `total` is incorrect. Suggestions from other users emphasize the importance of understanding compiler error messages and correcting syntax to ensure successful compilation. The user reports making several changes based on feedback but continues to face challenges, indicating a need for further clarification on string concatenation and error resolution.
JaysFan31
Hi. I'm completely new to Java, but I'm taking a course at a local university. I was wondering if someone could help me with this.

I need to create a program that counts change (pennies, nickels, dimes, quarters).

I've only been taking the class for about a week and am still very inexperienced when it comes to programming (and more importantly spotting errors). I modeled this program after a very similar one in my textbook. However, I cannot compile it using Dr. Java. Would someone mind helping me with some of the syntax errors I have made? Any help would be appreciated.


import java.util.Scanner;

public class CoinCounter {

public static void main(String[] args) {

// we define the variables that we need for our calculations
int quarters = 0, dimes = 0.0;
int nickels = 0; pennies = 0;
int total, num;

// we read in the values
Scanner scan = new Scanner(System.in);

System.out.println("How many quarters do you have:");
int quarters = scan.nextInt();
System.out.println("How many dimes do you have:");
dimes = scan.nextInt();
System.out.println("How many nickels do you have:");
nickels = scan.nextInt();
System.out.println("How many pennies do you have:");
pennies = scan.nextDouble();

// we perform the calculations
quarters + dimes + nickels + pennies = num;

total = 25 * quarters;
total = total + 10 * dimes;
total = nickels * 5 + total;
total = total + pennies;

// print the result
System.out.println("The number of coins you have is "
+ num);
System.out.println("And they are worth in cents: " total);
}
}
 
Technology news on Phys.org
JaysFan31 said:
Hi. I'm completely new to Java, but I'm taking a course at a local university. I was wondering if someone could help me with this.

I need to create a program that counts change (pennies, nickels, dimes, quarters).

I've only been taking the class for about a week and am still very inexperienced when it comes to programming (and more importantly spotting errors). I modeled this program after a very similar one in my textbook. However, I cannot compile it using Dr. Java. Would someone mind helping me with some of the syntax errors I have made? Any help would be appreciated.


import java.util.Scanner;

public class CoinCounter {

public static void main(String[] args) {

// we define the variables that we need for our calculations
int quarters = 0, dimes = 0.0;

dimes should be initialized to 0, not 0.0, right?
 
JaysFan31 said:
Would someone mind helping me with some of the syntax errors I have made?
It would help if you posted the errors. We could compile it ourselves and see what our compilers say and point out your mistakes, but that doesn't help us help you learn how to read compiler output messages!
 
Last edited:
There is a ; instead of a , on the following line:

int nickels = 0; pennies = 0;
 
Thank you for the responses. I'll make the changes and re-compile.
 
OK. I made 4 changes.
I changed the dimes to just 0
I changed the ; after nickels = 0 to ,
I changed the scan.nextDouble for pennies to scan.nextInt
I changed quarters + dimes + nickels + pennies = num; to num = quarters + dimes + nickels + pennies;

I still get the following compiler error however:
Line 35 "System.out.println("And they are worth in cents: " total);
Error: ')' expected
Could someone explain?


import java.util.Scanner;

public class CoinCounter {

public static void main(String[] args) {

// we define the variables that we need for our calculations
int quarters = 0, dimes = 0;
int nickels = 0, pennies = 0;
int total, num;

// we read in the values
Scanner scan = new Scanner(System.in);

System.out.println("How many quarters do you have:");
int quarters = scan.nextInt();
System.out.println("How many dimes do you have:");
dimes = scan.nextInt();
System.out.println("How many nickels do you have:");
nickels = scan.nextInt();
System.out.println("How many pennies do you have:");
pennies = scan.nextInt();

// we perform the calculations
num = quarters + dimes + nickels + pennies;

total = 25 * quarters;
total = total + 10 * dimes;
total = nickels * 5 + total;
total = total + pennies;

// print the result
System.out.println("The number of coins you have is "
+ num);
System.out.println("And they are worth in cents: " total);
}
}
 
JaysFan31 said:
Code:
I still get the following compiler error however:
Line 35 "System.out.println("And they are worth in cents: " total);
Error: ')' expected
Could someone explain?
You need to concatenate the string with the variable total.
 
JaysFan31 said:
I still get the following compiler error however:
Line 35 "System.out.println("And they are worth in cents: " total);
Error: ')' expected
Could someone explain?
[snip]
System.out.println("And they are worth in cents: " total);
One likely elaboration is that somewhere in this line, there is a syntax error, and the error occurs someplace where it wouldn't be too unreasonable to expect a close parenthesis.
 
Back
Top