title: Ruby while loop not stopping when condition is met
body: <p>I starting to learn Ruby, and i'm stuck with this program i'm writing which is suppose to be the game "Craps" small part of the game at least anyway, the code is looping at the 2nd while loop even when the random dice is meeting the loop's condition.</p>
  
  <p>This is the loop that keeps looping </p>
  
  <pre><code>while new_dice_sum != 7 or new_dice_sum != 11 or new_dice_sum != 2 or new_dice_sum != 3 or new_dice_sum != 12 or new_dice_sum != point
                      dice1 = 1 + rand(6)
                      dice2 = 1 + rand(6)
                      new_dice_sum = dice1.to_i + dice2.to_i
  </code></pre>
  
  <p>This is the complete code of the program.</p>
  
  <pre><code>input = ""
  point = 0
  balance = 100
  Bet = 10
  dice1 = 0
  dice2 = 0
  dice_sum = 0
  new_dice_sum = 0
  won = 0
  lost = 0
  while input != "Q"
      print "Please choose R to roll the dice or Q to exit the game: "
      input = gets.chomp.upcase
      if input == "R"
          if balance &gt; 10
              dice1 = 1 + rand(6)
              dice2 = 1 + rand(6)
              dice_sum = dice1.to_i + dice2.to_i
              puts "First dice is #{dice1} while the second dice is #{dice2} both are a total of #{dice_sum}"
              if dice_sum == 7 || dice_sum == 11
                  balance = balance + Bet
                  won = won + 1
                  puts "You won, Your new balance is #{balance}"
              elsif dice_sum == 2 || dice_sum == 3 || dice_sum == 12
                  balance = balance - Bet
                  lost = lost + 1
                  puts "You lost, Your new balance is #{balance}"
              else
                  point = dice_sum
                  while new_dice_sum != 7 or new_dice_sum != 11 or new_dice_sum != 2 or new_dice_sum != 3 or new_dice_sum != 12 or new_dice_sum != point
                      dice1 = 1 + rand(6)
                      dice2 = 1 + rand(6)
                      new_dice_sum = dice1.to_i + dice2.to_i
                      puts "In the new roll with your point #{point}, The first dice is #{dice1} while the second dice is #{dice2} both are a total of #{new_dice_sum}"
                      if new_dice_sum == 7 || new_dice_sum == 11
                          balance = balance + Bet
                          won = won + 1
                          puts "You won, Your new balance is #{balance}"
                      elsif new_dice_sum == 2 || new_dice_sum == 3 || new_dice_sum == 12
                          balance = balance - Bet
                          lost = lost + 1
                          puts "You lost, Your new balance is #{balance}"
                      elsif new_dice_sum == point 
                          balance = balance + Bet
                          won = won + 1 
                          puts "Your Total dice is equal to your point you won, your new balance is #{balance}"
                      end
                  end
              end  
          else
              puts "Your balance is not enough to place a bet, Your balance now is #{balance}"
          end
      elsif input != "Q"
      puts "#{input} is not valid choice"
      end
  end
  puts "Your current balance is #{balance}$ and you won #{won} times and lost #{lost} times"
  exit
  </code></pre>