| Author | 
		Message | 
	
		 
		Wintermini
 
 
 
    
		 | 
		
		
			
				  Posted: Fri Jan 08, 2010 9:44 pm    Post subject: How do you randmomize strings?  | 
	
				
				 | 
			 
			 
				
  | 
			 
			
				Basically, I'm doing a MULTIPLE CHOICE quiz with the following questions, and so far i have this down:
 
 
	  | Turing: | 	 		  
 
 
        var question : array 0 .. 8 of string
 
        question (0) := "Approximately how big is a serving?"
 
        question (1) := "What is the recommended serving of Milk and Milk Alternatives for a 15-year-old girl?"
 
        question (2) := "Eating too much contribute to _____?"
 
        question (3) := "What is the type of food you shouldn't be eating too much of?"        
 
        question (4) := "Aside from healthy eating, what else should you do to balance your healthy lifestyle?"        
 
        question (5) := "Which food products belong in the Grain Products?"
 
        question (6) := "Which food products belong in the Meat and Meat Alternatives?"  
 
        question (7) := "Which food products belong in the Fruits and Vegetables?"  
 
 
  | 	 
  | 
			 
			
				 | 
			 
		  | 
	
	 
		 | 
		
		 | 
	
	
 
		  | 
	
		 
		Sponsor Sponsor 
		 
  
		 | 
		
 | 
	
	 
		  | 
	
				 
		deltamanx
 
  
 
    
		 | 
		
		
			
				  Posted: Fri Jan 08, 2010 9:56 pm    Post subject: Re: How do you randmomize strings?  | 
	
				
				 | 
			 
			 
				
  | 
			 
			
				You could take the long round about way of doing it and do this:
 
 
	  | code: | 	 		  
 
var something : int
 
 
something := randint (0, 7)
 
 
if something = 0 then
 
put question (0)
 
elsif something = 1 then
 
put question (1)
 
elsif ~~~
 
~~~
 
~~~
 
elsif something = 7 then
 
put question (7)
 
end if
 
  | 	  
 
 
But I don't think you want to do that. | 
			 
			
				 | 
			 
		  | 
	
	 
		 | 
		
		 | 
	
	
 
		  | 
	
				 
		Ktomislav
 
  
 
    
		 | 
		
		
			
				  Posted: Sat Jan 09, 2010 11:50 am    Post subject: Re: How do you randmomize strings?  | 
	
				
				 | 
			 
			 
				
  | 
			 
			
				You mean how to make you program asks you a random question?
 
If so then use what deltamanx said or simplified:
 
 
	  | code: | 	 		  var temp, num_of_q: int
 
temp := randint (0, num_of_q-1);
 
put question (temp)  | 	  
 
 
num_of_q is number of questions you have got so far. So for now num_of_q is 8.
 
The reason -1 is there is because you started your question array from 0.
 
Hope this helps. | 
			 
			
				 | 
			 
		  | 
	
	 
		 | 
		
		 | 
	
	
 
		  | 
	
				 
		Insectoid
 
  
 
    
		 | 
		
		
			
				  Posted: Sat Jan 09, 2010 9:17 pm    Post subject: RE:How do you randmomize strings?  | 
	
				
				 | 
			 
			 
				
  | 
			 
			
				The problem with that is that you can have questions repeat. Better to have a 'shuffle' function. There are different ways to do this, the easiest being an array of strings, then select 2 random elements and swap them. Do this X amount of times (I dunno exactly how big X should be, probably array size * another variable. It's hard to judge the point where it can be called 'shuffled').
 
 
Shuffling is actually remarkably similar to sorting. | 
			 
			
				 | 
			 
		  | 
	
	 
		 | 
		
		 | 
	
	
 
		  | 
	
				 
		Ktomislav
 
  
 
    
		 | 
		
		
			
				  Posted: Sun Jan 10, 2010 5:15 am    Post subject: Re: How do you randmomize strings?  | 
	
				
				 | 
			 
			 
				
  | 
			 
			
				If want to make sure your questions don't repeat use array which contains indexes of asked questions.
 
And ofcourse a counter to know how many questions your program has asked so far.
 
 
Lets say asked: array of int and  num_asked: int.
 
So for instance if your program asks question number five num_asked := num_asked + 1;
 
and asked (num_asked) := 5; | 
			 
			
				 | 
			 
		  | 
	
	 
		 | 
		
		 | 
	
	
 
		  | 
	
				 
		 |