| 
									
										
										
										
											2014-05-24 20:16:26 -04:00
										 |  |  | USING: arrays help.markup help.syntax kernel math ;
 | 
					
						
							| 
									
										
										
										
											2008-08-06 02:07:10 -04:00
										 |  |  | IN: 24-game | 
					
						
							|  |  |  | 
 | 
					
						
							| 
									
										
										
										
											2012-06-20 03:37:09 -04:00
										 |  |  | HELP: 24-game | 
					
						
							| 
									
										
										
										
											2008-08-06 02:07:10 -04:00
										 |  |  | { $description "Starts the game!" } | 
					
						
							|  |  |  | { $examples | 
					
						
							|  |  |  |     { $unchecked-example | 
					
						
							|  |  |  |         "USE: 24-game" | 
					
						
							| 
									
										
										
										
											2012-06-20 03:37:09 -04:00
										 |  |  |         "24-game" | 
					
						
							| 
									
										
										
										
											2008-08-06 02:07:10 -04:00
										 |  |  |         "{ 8 2 1 2 }\n" | 
					
						
							|  |  |  |         "Commands: { + - * / rot swap q }\n" | 
					
						
							|  |  |  |         "swap\n" | 
					
						
							|  |  |  |         "{ 8 2 2 1 }\n" | 
					
						
							|  |  |  |         "Commands: { + - * / rot swap q }\n" | 
					
						
							|  |  |  |         "-\n" | 
					
						
							|  |  |  |         "{ 8 2 1 }\n" | 
					
						
							|  |  |  |         "Commands: { + - * / rot swap q }\n" | 
					
						
							|  |  |  |         "+\n" | 
					
						
							|  |  |  |         "{ 8 3 }\n" | 
					
						
							|  |  |  |         "Commands: { + - * / swap q }\n" | 
					
						
							|  |  |  |         "*\n" | 
					
						
							|  |  |  |         "You WON!" | 
					
						
							|  |  |  |     } | 
					
						
							|  |  |  | } ;
 | 
					
						
							|  |  |  | 
 | 
					
						
							| 
									
										
										
										
											2012-06-20 03:37:09 -04:00
										 |  |  | HELP: make-24 | 
					
						
							|  |  |  | { $values { "array" array } } | 
					
						
							| 
									
										
										
										
											2008-08-06 02:07:10 -04:00
										 |  |  | { $description | 
					
						
							|  |  |  |     "Produces a vector with 4 integers. With the following condition: " | 
					
						
							|  |  |  |     "If these integers were directly on the stack, one can process them into 24, " | 
					
						
							|  |  |  |     "just using the provided commands and the 4 numbers. The Following are the " | 
					
						
							|  |  |  |     "provided commands: " | 
					
						
							|  |  |  |     { $link + } ", " { $link - } ", " { $link * } ", " | 
					
						
							| 
									
										
										
										
											2008-08-10 17:45:13 -04:00
										 |  |  |     { $link / } ", " { $link swap } ", and " { $link rot } "." | 
					
						
							| 
									
										
										
										
											2008-08-06 02:07:10 -04:00
										 |  |  | } | 
					
						
							|  |  |  | { $examples | 
					
						
							|  |  |  |     { $example | 
					
						
							| 
									
										
										
										
											2008-09-02 20:04:14 -04:00
										 |  |  |         "USING: 24-game kernel sequences prettyprint ;" | 
					
						
							| 
									
										
										
										
											2012-06-20 03:37:09 -04:00
										 |  |  |         "make-24 length 4 = ." | 
					
						
							| 
									
										
										
										
											2008-08-06 02:07:10 -04:00
										 |  |  |         "t" | 
					
						
							|  |  |  |     } | 
					
						
							| 
									
										
										
										
											2012-06-20 03:37:09 -04:00
										 |  |  |     { $notes { $link makes-24? } " is used in " { $link makes-24? } "." } | 
					
						
							| 
									
										
										
										
											2008-08-06 02:07:10 -04:00
										 |  |  | } ;
 | 
					
						
							|  |  |  | 
 | 
					
						
							| 
									
										
										
										
											2012-06-20 03:37:09 -04:00
										 |  |  | HELP: makes-24? | 
					
						
							| 
									
										
										
										
											2008-08-06 02:07:10 -04:00
										 |  |  | { $values | 
					
						
							| 
									
										
										
										
											2012-06-20 03:37:09 -04:00
										 |  |  |     { "a" integer } | 
					
						
							|  |  |  |     { "b" integer } | 
					
						
							|  |  |  |     { "c" integer } | 
					
						
							|  |  |  |     { "d" integer } | 
					
						
							| 
									
										
										
										
											2014-05-24 20:16:26 -04:00
										 |  |  |     { "?" boolean } | 
					
						
							| 
									
										
										
										
											2008-08-06 02:07:10 -04:00
										 |  |  | } | 
					
						
							|  |  |  | { $description | 
					
						
							| 
									
										
										
										
											2012-06-20 03:37:09 -04:00
										 |  |  |     "Tells if it is possible to win 24-game with these integers." | 
					
						
							| 
									
										
										
										
											2008-08-06 02:07:10 -04:00
										 |  |  | } ;
 | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | ARTICLE: "24-game" "The Game of 24" | 
					
						
							|  |  |  | "A classic math game, where one attempts to create 24, by applying " | 
					
						
							|  |  |  | "arithmetical operations and some shuffle words to a stack of 4 numbers. " | 
					
						
							| 
									
										
										
										
											2009-10-01 15:56:36 -04:00
										 |  |  | { $subsections | 
					
						
							| 
									
										
										
										
											2012-06-20 03:37:09 -04:00
										 |  |  |     24-game | 
					
						
							|  |  |  |     make-24 | 
					
						
							|  |  |  |     makes-24? | 
					
						
							| 
									
										
										
										
											2009-10-01 15:56:36 -04:00
										 |  |  | } ;
 | 
					
						
							| 
									
										
										
										
											2008-08-30 12:38:42 -04:00
										 |  |  | ABOUT: "24-game" |