View Full Version : Looping a if and then statement 5 times

03-08-2008, 03:03 AM
This is a computer HW.
Consider the process used for developing the program for Mr. Sphereman. Modify the Washer program so that the input, process, and output identified taes place five times.

Problem: Not sure which looping method I should use.


import javax.swing.JOptionPane;
public class James {
public static void main(String[] args) {

double Radius;
double Circumference;
String werd;
double pie;
int two;
String input;
char repeat;
String enter;

input = JOptionPane.showInputDialog("Enter the radius ");
Radius = Double.parseDouble(input);
pie = 3.14;
two = 2;
Circumference = two * Radius * pie;

if ((3 < Circumference) && (Circumference <5.5)){
JOptionPane.showMessageDialog(null,"This washer is optimally sized.");
else {
JOptionPane.showMessageDialog(null,"This washer is not adequate.");


The above is the "Washer" program but as of right now I'm stuck on choosing a looping method.
Should I choose the "the While loop", "the do-while loop" or "the for loop"?


* @(#)Washy.java
* Washy application
* @Emaj
* @version 1.00 2008/3/7
import java.util.Scanner ;
public class Washy {

public static void main(String[] args) {

double radius;
double circumference;
final double PI = 3.1415;
Scanner keyboard;
char repeat;
String input;

keyboard = new Scanner(System.in);
System.out.println("Enter a radius");
radius = keyboard.nextDouble();
circumference = 2 * PI * radius ;


if (( circumference > 3.0 ) && (circumference < 5.5))
System.out.println("The washer is appropriately sized");
System.out.println("The washer is not adequate.");

System.out.println("Would you like to repeat " +
"this program?");
System.out.print("Enter Y for yes or N for no: ");
input = keyboard.nextLine();
repeat = input.charAt(0);

} while (repeat == 'Y' || repeat == 'y');



I decided to add a do-while loop but I encountered this problem when running it:

Enter Y for yes or N for no: Exception in thread "main" java.lang.StringIndexOutOfBoundsException: String index out of range: 0
at java.lang.String.charAt(String.java:687)
at Washy.main(Washy.java:38)

Also is there a way to make sure the program repeats itself 5 times?

EDIT: Please delete this post thank you!