| lottery time! 
 
	 
	
		| Author | Message |   
		| Jenkinz 
 
 
 
 
 | 
			
				|  Posted: Wed May 31, 2006 7:58 am    Post subject: lottery time! |  |   
				| 
 |  
				| heres a fairly simple program used that allows the user to play the lottery, your bet is how much money *up to 100$* that your are willing to bet, the number your pick is randomly generated, if you pick the correct number *from 1-10* then you win the amount of money you bet *5, comments are appreciated 
 
 	  | code: |  	  | var bet : int
var guess : int
 var randnum : int
 var current_win : int
 var counter : int
 var total_win : int
 var status : string
 var answer : string
 var counters : int
 
 counter := 0
 counters := 0
 
 randint (randnum, 1, 10)
 total_win := 0
 current_win := 0
 loop
 
 put "please enter your bet"
 get bet
 put "now please enter your guess"
 get guess
 
 if guess = randnum
 then
 current_win := bet * 5
 status := "Won"
 counter := counter + 1
 total_win := total_win + current_win
 put "you have won this is your summary"
 delay (1000)
 cls
 put "********Summary********"
 put "Winnings: " : 2, current_win
 put "Your Bet: " : 2, bet
 put "status " : 2, status
 put "  "
 put "Total Bets: " : 2, counter
 put "Total Loses: " : 2, counters
 put "Total Winnings: " : 2, total_win
 else
 status := "Lost"
 current_win := current_win - bet
 counters := counters + 1
 total_win := total_win + current_win
 put "You have lost this is your summary"
 delay (1000)
 cls
 put "********Summary********"
 put "Winnings: " : 2, current_win
 put "Your Bet: " : 2, bet
 put "Status:   " : 2, status
 put "  "
 put "Total Bets: " : 2, counter
 put "Total Loses: " : 2, counters
 put "Total Winnings: " : 2, current_win
 end if
 delay (1000)
 put "would you like to play again?"
 get answer
 if answer = "no"
 then
 exit
 end if
 end loop
 cls
 put "thank you for playing!"
 
 | 
 |  
				|  |  |   
		|  |  |  
	  
		|  |   
		| Sponsor Sponsor
 
  
   |  |   
		|  |   
		| TheOneTrueGod 
 
  
 
 
 | 
			
				|  Posted: Wed May 31, 2006 1:23 pm    Post subject: (No subject) |  |   
				| 
 |  
				| Not too bad, but there is plenty of room for improvement.  My first big concern is code optimization. 
 Look at the two if statements.  Some major redundant code there.  Why not just put the "output" part of it after the two statements?
 
 Second, some problems with the whole guessing thing.  You only randomize the number once, so the "random" number is going to be the same every time you play the game...  Also, you don't tell the person that their number has to be between 1 and 10, and you don't regulate it between those values either.
 
 You should probably keep track of the user's current amount of money, because as anyone who has gambled knows, you can't just reach down your pants and get more money... You have to have that money to begin with.
 
 Also, you didn't account for answers like "n" or "No" or "nO" or something like "I would rather play polo".  Also, I can crash it with ease by entering a string when it asks for my bet or my guess.  When making a program based around input you need to validate that input.  For doing things like this, make sure you have a loop around your checking area, and use the commands intstrok and intstr.
 
 Good luck
  |  
				|  |  |   
		|  |  |  
	  
		|  |   
		| upthescale 
 
 
 
 
 | 
			
				|  Posted: Wed May 31, 2006 2:04 pm    Post subject: (No subject) |  |   
				| 
 |  
				| neat, but shudn't it be in sourcecode? |  
				|  |  |   
		|  |  |  
	  
		|  |   
		| Jenkinz 
 
 
 
 
 | 
			
				|  Posted: Wed May 31, 2006 4:18 pm    Post subject: (No subject) |  |   
				| 
 |  
				| upthescale wrote: neat, but shudn't it be in sourcecode? 
 sorryt worng section am farily new to the forums and turing
 |  
				|  |  |   
		|  |  |  
	  
		|  |   
		| ohgeez_ 
 
  
 
 
 | 
			
				|  Posted: Wed May 31, 2006 9:31 pm    Post subject: (No subject) |  |   
				| 
 |  
				| neat program. 
 now as theonetruegod said, ur code can be shortened by displaying ur summary after the if statement, ur random number needs to be different time everytime.
 
 other things u do to shorten code.
 
 - u can initialize ur variables with values by
 
 	  | code: |  	  |  var counter : int := 0  | 
 which i think makes it easier to read since ur not going to change it back to zero later on in your program.
 
 - u can also group ur variables together with a comma instead of all those lines
 
 	  | code: |  	  | var bet, guess, randnum : int | 
 
 - same goes for the initialization
 
 	  | code: |  	  |  var counter, counters : int := 0  | 
 
 otherwise. pretty good program =D
 good luck
 |  
				|  |  |   
		|  |  |  
	  
		|  |   
		| [Gandalf] 
 
  
 
 
 | 
			
				|  Posted: Wed May 31, 2006 10:21 pm    Post subject: (No subject) |  |   
				| 
 |  
				| Note:  There is a difference between optimization and making your code shorter.  Just because one program has less lines than another does not neccessarily mean that it runs faster and more efficiently than longer code. |  
				|  |  |   
		|  |  |  
	  
		|  |   
		| Jenkinz 
 
 
 
 
 | 
			
				|  Posted: Fri Jun 02, 2006 8:40 am    Post subject: (No subject) |  |   
				| 
 |  
				| yea i just learend to do it that way so i stuck with it |  
				|  |  |   
		|  |  |  
	  
		|  |   
		|  |  
 |