6 Replies - 1437 Views - Last Post: 10 October 2012 - 01:39 PM Rate Topic: -----

#1 benjamin.l.johnson  Icon User is offline

  • New D.I.C Head

Reputation: 0
  • View blog
  • Posts: 3
  • Joined: 10-October 12

switch stament problem

Posted 10 October 2012 - 06:40 AM

Create a program that simulates a slot machine. When the program runs, it should do the
following:
Asks the user to enter the amount of money he or she wants to enter into the slot
machine.
Instead of displaying images, the program will randomly select a word from the
following list: Cherries, Oranges, Plums, Bells, Melons, Bars. To select a word, the
program can generate a random number in the range of 0 through 5. If the number is 0,
the selected word is Cherries; if the number is 1, the selected word is Oranges; and so
forth. The program should randomly select a word from this list three times and display
all three of the words.
If none of the random selected words match, the program will inform the user that he
or she has won $0. If two of the words match, the program will inform the user that he
or she has won two times the amount entered. If three of the words match, the
program will inform the user that he or she has won three times the amount entered.
The program will ask whether the user wants to play again. If so, these steps are
repeated. If not, the program displays the total amount of money entered into the slot
machine and the total amount won.

 public static void main(String[] args) {
       //define var
        //String Cherries, Oranges, Plums, Bells, Melons, Bars;
        int one,two,three,four,five,num,count;
        double bet;
        Random rand = new Random();
       
        
        Scanner keyboard = new Scanner (System.in); //New scanner class
     
        System.out.print("How much would you like to bet? ");//get's user input and bet
        bet = keyboard.nextDouble();
        
        for (count=1; count<=3;count++)
        {
       
         int picked = rand.nextInt(5);
            
         switch (picked){
               case 0:
                    System.out.print("Bells ");
                    break;
               case 1: 
                    System.out.print("Cherries "); 
                    break;
               case 2: 
                    System.out.print("Orange "); 
                    break;
               case 3: 
                    System.out.print("Plums "); 
                    break;
               case 4: 
                    System.out.print("Melons "); 
                    break;
              case 5: 
                    System.out.print("Bars "); 
                    break;
          
            }
 
       
        }
        
    }
}



I was given this task above, this is the code I have. I am stuck at a stand still how can I save the input from the first time the for loop runs to a specific variable? can I use a ++ on a variable i.e
 word1 = ..... 
word1++
word2 = ....

? Im still stuck any help is appreciated I looked at many examples I can not for the life of me figure it out.

Is This A Good Question/Topic? 0
  • +

Replies To: switch stament problem

#2 g00se  Icon User is offline

  • D.I.C Lover
  • member icon

Reputation: 2656
  • View blog
  • Posts: 11,204
  • Joined: 20-September 08

Re: switch stament problem

Posted 10 October 2012 - 06:52 AM

You'd be better off using an array than switch
Was This Post Helpful? 0
  • +
  • -

#3 benjamin.l.johnson  Icon User is offline

  • New D.I.C Head

Reputation: 0
  • View blog
  • Posts: 3
  • Joined: 10-October 12

Re: switch stament problem

Posted 10 October 2012 - 07:05 AM

Is there anyway to make something like this work?
 public static void main(String[] args) {
       //define var
        //String Cherries, Oranges, Plums, Bells, Melons, Bars;
        int one,two,three,four,five,num,count;
        double bet;
        Random rand = new Random();
       int word=0,word1=word+1,word2=word+2;
        
        Scanner keyboard = new Scanner (System.in); //New scanner class
     
        System.out.print("How much would you like to bet? ");//get's user input and bet
        bet = keyboard.nextDouble();
        
        for (count=1; count<=3;count++)
        {
       
         int picked = rand.nextInt(5);
            
         switch (picked){
               case 0:
                    System.out.print("Bells ");word=1;
                    break;
               case 1: 
                    System.out.print("Cherries "); word=1;
                    break;
               case 2: 
                    System.out.print("Orange "); word=1;
                    break;
               case 3: 
                    System.out.print("Plums "); word=1;
                    break;
               case 4: 
                    System.out.print("Melons "); word=1;
                    break;
              case 5: 
                    System.out.print("Bars "); word=1;
                    break;
          
            }
 
       word++;
        }
    if(word==word1 || word==word2 || word2 == word1){
    System.out.println("you won double money");
    }
        
        
        
        
        
    }
}


Was This Post Helpful? 0
  • +
  • -

#4 g00se  Icon User is offline

  • D.I.C Lover
  • member icon

Reputation: 2656
  • View blog
  • Posts: 11,204
  • Joined: 20-September 08

Re: switch stament problem

Posted 10 October 2012 - 08:14 AM

Quote

Is there anyway to make something like this work?

I wouldn't ;) Using an array is clearer and simpler
Was This Post Helpful? 0
  • +
  • -

#5 baavgai  Icon User is online

  • Dreaming Coder
  • member icon

Reputation: 5780
  • View blog
  • Posts: 12,595
  • Joined: 16-October 07

Re: switch stament problem

Posted 10 October 2012 - 09:04 AM

Also, your code would be much cleaner if word,word1,word2 were int [] word = new int[3];.

Learn arrays. Honestly, forget switches; you never actually need them. You do need arrays.
Was This Post Helpful? 0
  • +
  • -

#6 pbl  Icon User is offline

  • There is nothing you can't do with a JTable
  • member icon

Reputation: 8325
  • View blog
  • Posts: 31,857
  • Joined: 06-March 08

Re: switch stament problem

Posted 10 October 2012 - 11:11 AM

Also this statement:
int picked = rand.nextInt(5);

returns a value between 0 and 4 inclusive so never "Bar" will be selected :)
Was This Post Helpful? 0
  • +
  • -

#7 benjamin.l.johnson  Icon User is offline

  • New D.I.C Head

Reputation: 0
  • View blog
  • Posts: 3
  • Joined: 10-October 12

Re: switch stament problem

Posted 10 October 2012 - 01:39 PM

Thanks for all the help I guess it is time to learn about arrays. These are great forums and I am sure I will be back.
Was This Post Helpful? 0
  • +
  • -

Page 1 of 1