Results 1 to 3 of 3
Thread: While help?
- 02-21-2013, 02:20 AM #1
Member
- Join Date
- Feb 2013
- Posts
- 7
- Rep Power
- 0
While help?
I'm making a program that if you enter a whole number from 1 to 9 and 0 to exit. Code a pyramid structure by using only odd numbers. The pyramid needs to be centered without hard keying in spaces you must use a loop to print out the appropriate number of spaces to align the pyramid.
The part I'm having trouble on is to get the loop to continue after one entry is submitted and then when the user enter a number >9 to give the error invalid entry. It works fine when a number <0 is entered and the invalid entry prints. Also I'm having trouble center aligning the pyramid without hard keying it in with spaces. any help would be great!!
Java Code:import java.util.Scanner; public class Pyramid{ public static void main(String[] args ) { Scanner input = new Scanner(System.in); System.out.println("Enter a whole number from 1 to 9 <0 to quit>"); int number = input.nextInt(); while(number<=9|| number<=1){ if(number==1||number==2){ System.out.println( 1 ); number=1; break; } if(number==3||number==4){ System.out.println( 1 ); System.out.println(333); number=3; break; } if(number==5||number==6){ System.out.println( 1 ); System.out.println( 333 ); System.out.println(55555); number=4; break; } if(number==7||number==8){ System.out.println( 1 ); System.out.println( 333 ); System.out.println( 55555); System.out.println(7777777); number=7; break; } if(number==9){ System.out.println( 1 ); System.out.println( 333 ); System.out.println( 55555); System.out.println(7777777); System.out.println(999999999); number=9; break; } if (number < 0) { System.out.println("number is an invalid entry. Please try again"); number= -1; break; } if (number > 9) { System.out.println("number is an invalid entry. Please try again"); number=15; break; } if (number==0){ System.out.println("Thanks for playing"); break; } } while(number !=0){ System.out.println("Enter a whole number from 1 to 9 <0 to quit>"); input.nextInt(); break; } } }
- 02-21-2013, 07:00 AM #2
Senior Member
- Join Date
- Jan 2009
- Location
- CA, USA
- Posts
- 271
- Rep Power
- 13
Re: While help?
First, you may want to use a switch-case statement.
Java Code:switch(number) { case 0: //do something break; case 1: case 2: //do something break; case 3: case 4: //do something break; case 5: case 6: //do something break; /// ...and so on default: //all other cases break; }
Java Code:int spaces = 1; for(int i = 0; i < spaces; i++) { System.out.print(' '); } for(int i = 0; i < number; i++) { System.out.print(number); } for(int i = 0; i < spaces; i++) { System.out.print(' '); } System.out.println();
Last edited by AndrewM16921; 02-21-2013 at 07:03 AM.
- 02-21-2013, 10:12 AM #3
Member
- Join Date
- Feb 2013
- Location
- Islamabad, Pakistan
- Posts
- 25
- Rep Power
- 0
Bookmarks