basic101 0.1.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +7 -0
- data/.rspec +2 -0
- data/.simplecov +1 -0
- data/.yardopts +7 -0
- data/Changelog.md +3 -0
- data/Gemfile +12 -0
- data/Gemfile.lock +75 -0
- data/LICENSE.md +9 -0
- data/README.md +193 -0
- data/Rakefile +14 -0
- data/VERSION +1 -0
- data/bin/basic101 +10 -0
- data/lib/basic101/abs_function.rb +19 -0
- data/lib/basic101/argument_checker.rb +61 -0
- data/lib/basic101/arguments.rb +32 -0
- data/lib/basic101/array_reference.rb +52 -0
- data/lib/basic101/asc_function.rb +17 -0
- data/lib/basic101/basic_array.rb +69 -0
- data/lib/basic101/basic_comparisons.rb +20 -0
- data/lib/basic101/basic_float.rb +48 -0
- data/lib/basic101/basic_integer.rb +48 -0
- data/lib/basic101/basic_math.rb +22 -0
- data/lib/basic101/basic_numeric.rb +96 -0
- data/lib/basic101/basic_object.rb +35 -0
- data/lib/basic101/basic_string.rb +85 -0
- data/lib/basic101/binary_operation.rb +32 -0
- data/lib/basic101/binary_operations.rb +26 -0
- data/lib/basic101/built_in_functions.rb +31 -0
- data/lib/basic101/chr_function.rb +17 -0
- data/lib/basic101/cos_function.rb +17 -0
- data/lib/basic101/data_statement.rb +24 -0
- data/lib/basic101/define_function_statement.rb +23 -0
- data/lib/basic101/dim_statement.rb +25 -0
- data/lib/basic101/else_statement.rb +22 -0
- data/lib/basic101/end_statement.rb +13 -0
- data/lib/basic101/endif_statement.rb +19 -0
- data/lib/basic101/errors.rb +50 -0
- data/lib/basic101/exp_function.rb +17 -0
- data/lib/basic101/for_stack.rb +48 -0
- data/lib/basic101/for_statement.rb +57 -0
- data/lib/basic101/function.rb +11 -0
- data/lib/basic101/function_call.rb +32 -0
- data/lib/basic101/function_identifier.rb +8 -0
- data/lib/basic101/functions.rb +39 -0
- data/lib/basic101/gosub_statement.rb +23 -0
- data/lib/basic101/goto_statement.rb +23 -0
- data/lib/basic101/identifier.rb +23 -0
- data/lib/basic101/identity.rb +18 -0
- data/lib/basic101/if_statement.rb +31 -0
- data/lib/basic101/input.rb +44 -0
- data/lib/basic101/input_reader.rb +55 -0
- data/lib/basic101/input_statement.rb +46 -0
- data/lib/basic101/int_function.rb +17 -0
- data/lib/basic101/left_function.rb +19 -0
- data/lib/basic101/len_function.rb +18 -0
- data/lib/basic101/let_statement.rb +24 -0
- data/lib/basic101/line.rb +32 -0
- data/lib/basic101/log_function.rb +17 -0
- data/lib/basic101/main.rb +24 -0
- data/lib/basic101/mid_function.rb +20 -0
- data/lib/basic101/negate_operation.rb +21 -0
- data/lib/basic101/next_statement.rb +34 -0
- data/lib/basic101/not_operation.rb +23 -0
- data/lib/basic101/null_prompt_delimeter.rb +12 -0
- data/lib/basic101/null_transcript.rb +20 -0
- data/lib/basic101/numeric_identifier.rb +16 -0
- data/lib/basic101/on_goto_statement.rb +29 -0
- data/lib/basic101/output.rb +73 -0
- data/lib/basic101/parser.rb +457 -0
- data/lib/basic101/power_operation.rb +24 -0
- data/lib/basic101/print_comma.rb +20 -0
- data/lib/basic101/print_semicolon.rb +19 -0
- data/lib/basic101/print_statement.rb +33 -0
- data/lib/basic101/program.rb +100 -0
- data/lib/basic101/program_counter.rb +52 -0
- data/lib/basic101/prompt_delimeter.rb +13 -0
- data/lib/basic101/randomize_statement.rb +13 -0
- data/lib/basic101/read_statement.rb +25 -0
- data/lib/basic101/reference.rb +25 -0
- data/lib/basic101/remark_statement.rb +12 -0
- data/lib/basic101/restore_statement.rb +23 -0
- data/lib/basic101/return_statement.rb +16 -0
- data/lib/basic101/right_function.rb +19 -0
- data/lib/basic101/rnd_function.rb +24 -0
- data/lib/basic101/runtime.rb +132 -0
- data/lib/basic101/scalar_reference.rb +19 -0
- data/lib/basic101/sgn_function.rb +17 -0
- data/lib/basic101/sin_function.rb +17 -0
- data/lib/basic101/sqr_function.rb +17 -0
- data/lib/basic101/statement.rb +36 -0
- data/lib/basic101/stop_statement.rb +14 -0
- data/lib/basic101/str_function.rb +16 -0
- data/lib/basic101/string_identifier.rb +16 -0
- data/lib/basic101/tab.rb +18 -0
- data/lib/basic101/tab_function.rb +17 -0
- data/lib/basic101/tan_function.rb +17 -0
- data/lib/basic101/transcript.rb +37 -0
- data/lib/basic101/transform.rb +264 -0
- data/lib/basic101/user_defined_function.rb +54 -0
- data/lib/basic101/val_function.rb +16 -0
- data/lib/basic101.rb +93 -0
- data/rake_tasks/default.rake +1 -0
- data/rake_tasks/integration.rake +8 -0
- data/rake_tasks/jeweler.rake +28 -0
- data/rake_tasks/spec.rake +8 -0
- data/rake_tasks/test.rake +2 -0
- data/rake_tasks/yard.rake +3 -0
- data/test/integration/arguments.rb +25 -0
- data/test/integration/errors.rb +7 -0
- data/test/integration/integration_test.rb +28 -0
- data/test/integration/main.rb +49 -0
- data/test/integration/output_file.rb +40 -0
- data/test/integration/test.rb +135 -0
- data/test/integration/tests/basic_computer_games/23-match.bas +64 -0
- data/test/integration/tests/basic_computer_games/23-match.input +1 -0
- data/test/integration/tests/basic_computer_games/23-match.output +29 -0
- data/test/integration/tests/basic_computer_games/3dplot.bas +17 -0
- data/test/integration/tests/basic_computer_games/3dplot.input +0 -0
- data/test/integration/tests/basic_computer_games/3dplot.output +47 -0
- data/test/integration/tests/basic_computer_games/aceyducy.bas +100 -0
- data/test/integration/tests/basic_computer_games/aceyducy.input +8 -0
- data/test/integration/tests/basic_computer_games/aceyducy.output +78 -0
- data/test/integration/tests/basic_computer_games/amazing.bas +138 -0
- data/test/integration/tests/basic_computer_games/amazing.input +1 -0
- data/test/integration/tests/basic_computer_games/amazing.output +32 -0
- data/test/integration/tests/basic_computer_games/animal.bas +71 -0
- data/test/integration/tests/basic_computer_games/animal.input +17 -0
- data/test/integration/tests/basic_computer_games/animal.output +38 -0
- data/test/integration/tests/basic_computer_games/awari.bas +70 -0
- data/test/integration/tests/basic_computer_games/awari.input +11 -0
- data/test/integration/tests/basic_computer_games/awari.output +117 -0
- data/test/integration/tests/basic_computer_games/bagels.bas +81 -0
- data/test/integration/tests/basic_computer_games/bagels.input +12 -0
- data/test/integration/tests/basic_computer_games/bagels.output +42 -0
- data/test/integration/tests/basic_computer_games/banner.bas +94 -0
- data/test/integration/tests/basic_computer_games/banner.input +6 -0
- data/test/integration/tests/basic_computer_games/banner.output +135 -0
- data/test/integration/tests/basic_computer_games/basketbl.bas +196 -0
- data/test/integration/tests/basic_computer_games/basketbl.input +46 -0
- data/test/integration/tests/basic_computer_games/basketbl.output +509 -0
- data/test/integration/tests/basic_computer_games/batnum.bas +90 -0
- data/test/integration/tests/basic_computer_games/batnum.input +14 -0
- data/test/integration/tests/basic_computer_games/batnum.output +67 -0
- data/test/integration/tests/basic_computer_games/battle.bas +196 -0
- data/test/integration/tests/basic_computer_games/battle.input +21 -0
- data/test/integration/tests/basic_computer_games/battle.output +118 -0
- data/test/integration/tests/basic_computer_games/blackjck.bas +321 -0
- data/test/integration/tests/basic_computer_games/blackjck.input +26 -0
- data/test/integration/tests/basic_computer_games/blackjck.output +144 -0
- data/test/integration/tests/basic_computer_games/bombard.bas +93 -0
- data/test/integration/tests/basic_computer_games/bombard.input +20 -0
- data/test/integration/tests/basic_computer_games/bombard.output +175 -0
- data/test/integration/tests/basic_computer_games/bounce.bas +53 -0
- data/test/integration/tests/basic_computer_games/bounce.input +0 -0
- data/test/integration/tests/basic_computer_games/bounce.output +15 -0
- data/test/integration/tests/basic_computer_games/bowling.bas +101 -0
- data/test/integration/tests/basic_computer_games/bowling.input +23 -0
- data/test/integration/tests/basic_computer_games/bowling.output +229 -0
- data/test/integration/tests/basic_computer_games/boxing.bas +142 -0
- data/test/integration/tests/basic_computer_games/boxing.input +8 -0
- data/test/integration/tests/basic_computer_games/boxing.output +47 -0
- data/test/integration/tests/basic_computer_games/bug.bas +256 -0
- data/test/integration/tests/basic_computer_games/bug.input +17 -0
- data/test/integration/tests/basic_computer_games/bug.output +847 -0
- data/test/integration/tests/basic_computer_games/bullfght.bas +193 -0
- data/test/integration/tests/basic_computer_games/bullfght.input +4 -0
- data/test/integration/tests/basic_computer_games/bullfght.output +60 -0
- data/test/integration/tests/basic_computer_games/bullseye.bas +37 -0
- data/test/integration/tests/basic_computer_games/bullseye.input +10 -0
- data/test/integration/tests/basic_computer_games/bullseye.output +79 -0
- data/test/integration/tests/basic_computer_games/bunny.bas +40 -0
- data/test/integration/tests/basic_computer_games/bunny.input +0 -0
- data/test/integration/tests/basic_computer_games/bunny.output +67 -0
- data/test/integration/tests/basic_computer_games/buzzword.bas +25 -0
- data/test/integration/tests/basic_computer_games/buzzword.input +4 -0
- data/test/integration/tests/basic_computer_games/buzzword.output +25 -0
- data/test/integration/tests/basic_computer_games/calendar.bas +58 -0
- data/test/integration/tests/basic_computer_games/calendar.input +0 -0
- data/test/integration/tests/basic_computer_games/calendar.output +213 -0
- data/test/integration/tests/basic_computer_games/change.bas +51 -0
- data/test/integration/tests/basic_computer_games/change.input +4 -0
- data/test/integration/tests/basic_computer_games/change.output +28 -0
- data/test/integration/tests/basic_computer_games/checkers.bas +82 -0
- data/test/integration/tests/basic_computer_games/checkers.input +74 -0
- data/test/integration/tests/basic_computer_games/checkers.output +673 -0
- data/test/integration/tests/basic_computer_games/chemist.bas +27 -0
- data/test/integration/tests/basic_computer_games/chemist.input +11 -0
- data/test/integration/tests/basic_computer_games/chemist.output +54 -0
- data/test/integration/tests/basic_computer_games/chief.bas +51 -0
- data/test/integration/tests/basic_computer_games/chief.input +5 -0
- data/test/integration/tests/basic_computer_games/chief.output +19 -0
- data/test/integration/tests/basic_computer_games/chomp.bas +104 -0
- data/test/integration/tests/basic_computer_games/chomp.input +15 -0
- data/test/integration/tests/basic_computer_games/chomp.output +159 -0
- data/test/integration/tests/basic_computer_games/combat.bas +124 -0
- data/test/integration/tests/basic_computer_games/combat.input +7 -0
- data/test/integration/tests/basic_computer_games/combat.output +33 -0
- data/test/integration/tests/basic_computer_games/craps.bas +82 -0
- data/test/integration/tests/basic_computer_games/craps.input +9 -0
- data/test/integration/tests/basic_computer_games/craps.output +51 -0
- data/test/integration/tests/basic_computer_games/cube.bas +161 -0
- data/test/integration/tests/basic_computer_games/cube.input +25 -0
- data/test/integration/tests/basic_computer_games/cube.output +72 -0
- data/test/integration/tests/basic_computer_games/depthchg.bas +33 -0
- data/test/integration/tests/basic_computer_games/depthchg.input +16 -0
- data/test/integration/tests/basic_computer_games/depthchg.output +83 -0
- data/test/integration/tests/basic_computer_games/diamond.bas +27 -0
- data/test/integration/tests/basic_computer_games/diamond.input +1 -0
- data/test/integration/tests/basic_computer_games/diamond.output +65 -0
- data/test/integration/tests/basic_computer_games/dice.bas +31 -0
- data/test/integration/tests/basic_computer_games/dice.input +4 -0
- data/test/integration/tests/basic_computer_games/dice.output +46 -0
- data/test/integration/tests/basic_computer_games/digits.bas +78 -0
- data/test/integration/tests/basic_computer_games/digits.input +5 -0
- data/test/integration/tests/basic_computer_games/digits.output +70 -0
- data/test/integration/tests/basic_computer_games/evenwin1.bas +128 -0
- data/test/integration/tests/basic_computer_games/evenwin1.input +13 -0
- data/test/integration/tests/basic_computer_games/evenwin1.output +116 -0
- data/test/integration/tests/basic_computer_games/evenwin2.bas +70 -0
- data/test/integration/tests/basic_computer_games/evenwin2.input +14 -0
- data/test/integration/tests/basic_computer_games/evenwin2.output +56 -0
- data/test/integration/tests/basic_computer_games/flipflop.bas +79 -0
- data/test/integration/tests/basic_computer_games/flipflop.input +8 -0
- data/test/integration/tests/basic_computer_games/flipflop.output +45 -0
- data/test/integration/tests/basic_computer_games/footbal1.bas +298 -0
- data/test/integration/tests/basic_computer_games/footbal1.input +13 -0
- data/test/integration/tests/basic_computer_games/footbal1.output +315 -0
- data/test/integration/tests/basic_computer_games/footbal2.bas +181 -0
- data/test/integration/tests/basic_computer_games/footbal2.input +23 -0
- data/test/integration/tests/basic_computer_games/footbal2.output +318 -0
- data/test/integration/tests/basic_computer_games/furtradr.bas +170 -0
- data/test/integration/tests/basic_computer_games/furtradr.input +20 -0
- data/test/integration/tests/basic_computer_games/furtradr.output +133 -0
- data/test/integration/tests/basic_computer_games/golf.bas +244 -0
- data/test/integration/tests/basic_computer_games/golf.input +11 -0
- data/test/integration/tests/basic_computer_games/golf.output +69 -0
- data/test/integration/tests/basic_computer_games/gomoko.bas +54 -0
- data/test/integration/tests/basic_computer_games/gomoko.input +6 -0
- data/test/integration/tests/basic_computer_games/gomoko.output +66 -0
- data/test/integration/tests/basic_computer_games/guess.bas +40 -0
- data/test/integration/tests/basic_computer_games/guess.input +8 -0
- data/test/integration/tests/basic_computer_games/guess.output +37 -0
- data/test/integration/tests/basic_computer_games/gunner.bas +52 -0
- data/test/integration/tests/basic_computer_games/gunner.input +18 -0
- data/test/integration/tests/basic_computer_games/gunner.output +91 -0
- data/test/integration/tests/basic_computer_games/hamurabi.bas +119 -0
- data/test/integration/tests/basic_computer_games/hamurabi.input +7 -0
- data/test/integration/tests/basic_computer_games/hamurabi.output +51 -0
- data/test/integration/tests/basic_computer_games/hangman.bas +81 -0
- data/test/integration/tests/basic_computer_games/hangman.input +69 -0
- data/test/integration/tests/basic_computer_games/hangman.output +889 -0
- data/test/integration/tests/basic_computer_games/hello.bas +83 -0
- data/test/integration/tests/basic_computer_games/hello.input +7 -0
- data/test/integration/tests/basic_computer_games/hello.output +46 -0
- data/test/integration/tests/basic_computer_games/hexapawn.bas +174 -0
- data/test/integration/tests/basic_computer_games/hexapawn.input +38 -0
- data/test/integration/tests/basic_computer_games/hexapawn.output +521 -0
- data/test/integration/tests/basic_computer_games/hi-q.bas +135 -0
- data/test/integration/tests/basic_computer_games/hi-q.input +14 -0
- data/test/integration/tests/basic_computer_games/hi-q.output +115 -0
- data/test/integration/tests/basic_computer_games/hilo.bas +29 -0
- data/test/integration/tests/basic_computer_games/hilo.input +20 -0
- data/test/integration/tests/basic_computer_games/hilo.output +76 -0
- data/test/integration/tests/basic_computer_games/hockey.bas +210 -0
- data/test/integration/tests/basic_computer_games/hockey.input +59 -0
- data/test/integration/tests/basic_computer_games/hockey.output +243 -0
- data/test/integration/tests/basic_computer_games/horsrace.bas +130 -0
- data/test/integration/tests/basic_computer_games/horsrace.input +11 -0
- data/test/integration/tests/basic_computer_games/horsrace.output +517 -0
- data/test/integration/tests/basic_computer_games/hurkle.bas +51 -0
- data/test/integration/tests/basic_computer_games/hurkle.input +16 -0
- data/test/integration/tests/basic_computer_games/hurkle.output +81 -0
- data/test/integration/tests/basic_computer_games/kinema.bas +34 -0
- data/test/integration/tests/basic_computer_games/kinema.input +9 -0
- data/test/integration/tests/basic_computer_games/kinema.output +64 -0
- data/test/integration/tests/basic_computer_games/king.bas +268 -0
- data/test/integration/tests/basic_computer_games/king.input +7 -0
- data/test/integration/tests/basic_computer_games/king.output +57 -0
- data/test/integration/tests/basic_computer_games/lem.bas +246 -0
- data/test/integration/tests/basic_computer_games/lem.input +4 -0
- data/test/integration/tests/basic_computer_games/lem.output +68 -0
- data/test/integration/tests/basic_computer_games/letter.bas +26 -0
- data/test/integration/tests/basic_computer_games/letter.input +24 -0
- data/test/integration/tests/basic_computer_games/letter.output +123 -0
- data/test/integration/tests/basic_computer_games/life.bas +66 -0
- data/test/integration/tests/basic_computer_games/life.input +4 -0
- data/test/integration/tests/basic_computer_games/life.options +1 -0
- data/test/integration/tests/basic_computer_games/life.output +200 -0
- data/test/integration/tests/basic_computer_games/life2.bas +83 -0
- data/test/integration/tests/basic_computer_games/life2.input +17 -0
- data/test/integration/tests/basic_computer_games/life2.output +113 -0
- data/test/integration/tests/basic_computer_games/litquiz.bas +49 -0
- data/test/integration/tests/basic_computer_games/litquiz.input +4 -0
- data/test/integration/tests/basic_computer_games/litquiz.output +36 -0
- data/test/integration/tests/basic_computer_games/love.bas +34 -0
- data/test/integration/tests/basic_computer_games/love.input +1 -0
- data/test/integration/tests/basic_computer_games/love.output +67 -0
- data/test/integration/tests/basic_computer_games/lunar.bas +48 -0
- data/test/integration/tests/basic_computer_games/lunar.input +87 -0
- data/test/integration/tests/basic_computer_games/lunar.output +195 -0
- data/test/integration/tests/basic_computer_games/mastrmnd.bas +232 -0
- data/test/integration/tests/basic_computer_games/mastrmnd.input +18 -0
- data/test/integration/tests/basic_computer_games/mastrmnd.output +67 -0
- data/test/integration/tests/basic_computer_games/mathdice.bas +60 -0
- data/test/integration/tests/basic_computer_games/mathdice.input +4 -0
- data/test/integration/tests/basic_computer_games/mathdice.output +86 -0
- data/test/integration/tests/basic_computer_games/mugwump.bas +56 -0
- data/test/integration/tests/basic_computer_games/mugwump.input +16 -0
- data/test/integration/tests/basic_computer_games/mugwump.output +139 -0
- data/test/integration/tests/basic_computer_games/name.bas +25 -0
- data/test/integration/tests/basic_computer_games/name.input +2 -0
- data/test/integration/tests/basic_computer_games/name.output +22 -0
- data/test/integration/tests/basic_computer_games/nicoma.bas +34 -0
- data/test/integration/tests/basic_computer_games/nicoma.input +8 -0
- data/test/integration/tests/basic_computer_games/nicoma.output +36 -0
- data/test/integration/tests/basic_computer_games/nim.bas +156 -0
- data/test/integration/tests/basic_computer_games/nim.input +8 -0
- data/test/integration/tests/basic_computer_games/nim.output +30 -0
- data/test/integration/tests/basic_computer_games/number.bas +37 -0
- data/test/integration/tests/basic_computer_games/number.input +19 -0
- data/test/integration/tests/basic_computer_games/number.output +73 -0
- data/test/integration/tests/basic_computer_games/onecheck.bas +86 -0
- data/test/integration/tests/basic_computer_games/onecheck.input +6 -0
- data/test/integration/tests/basic_computer_games/onecheck.output +77 -0
- data/test/integration/tests/basic_computer_games/orbit.bas +96 -0
- data/test/integration/tests/basic_computer_games/orbit.input +10 -0
- data/test/integration/tests/basic_computer_games/orbit.output +113 -0
- data/test/integration/tests/basic_computer_games/pizza.bas +68 -0
- data/test/integration/tests/basic_computer_games/pizza.input +10 -0
- data/test/integration/tests/basic_computer_games/pizza.output +93 -0
- data/test/integration/tests/basic_computer_games/poetry.bas +42 -0
- data/test/integration/tests/basic_computer_games/poetry.input +0 -0
- data/test/integration/tests/basic_computer_games/poetry.options +1 -0
- data/test/integration/tests/basic_computer_games/poetry.output +50 -0
- data/test/integration/tests/basic_computer_games/poker.bas +416 -0
- data/test/integration/tests/basic_computer_games/poker.input +34 -0
- data/test/integration/tests/basic_computer_games/poker.output +197 -0
- data/test/integration/tests/basic_computer_games/queen.bas +168 -0
- data/test/integration/tests/basic_computer_games/queen.input +10 -0
- data/test/integration/tests/basic_computer_games/queen.output +133 -0
- data/test/integration/tests/basic_computer_games/reverse.bas +62 -0
- data/test/integration/tests/basic_computer_games/reverse.input +12 -0
- data/test/integration/tests/basic_computer_games/reverse.output +79 -0
- data/test/integration/tests/basic_computer_games/rocket.bas +71 -0
- data/test/integration/tests/basic_computer_games/rocket.input +42 -0
- data/test/integration/tests/basic_computer_games/rocket.output +149 -0
- data/test/integration/tests/basic_computer_games/rocksp.bas +33 -0
- data/test/integration/tests/basic_computer_games/rocksp.input +9 -0
- data/test/integration/tests/basic_computer_games/rocksp.output +69 -0
- data/test/integration/tests/basic_computer_games/roulette.bas +239 -0
- data/test/integration/tests/basic_computer_games/roulette.input +9 -0
- data/test/integration/tests/basic_computer_games/roulette.output +98 -0
- data/test/integration/tests/basic_computer_games/rusrou.bas +26 -0
- data/test/integration/tests/basic_computer_games/rusrou.input +9 -0
- data/test/integration/tests/basic_computer_games/rusrou.output +50 -0
- data/test/integration/tests/basic_computer_games/salvo.bas +329 -0
- data/test/integration/tests/basic_computer_games/salvo.input +21 -0
- data/test/integration/tests/basic_computer_games/salvo.output +49 -0
- data/test/integration/tests/basic_computer_games/sinewave.bas +17 -0
- data/test/integration/tests/basic_computer_games/sinewave.input +0 -0
- data/test/integration/tests/basic_computer_games/sinewave.output +168 -0
- data/test/integration/tests/basic_computer_games/slalom.bas +165 -0
- data/test/integration/tests/basic_computer_games/slalom.input +20 -0
- data/test/integration/tests/basic_computer_games/slalom.output +122 -0
- data/test/integration/tests/basic_computer_games/slots.bas +134 -0
- data/test/integration/tests/basic_computer_games/slots.input +2 -0
- data/test/integration/tests/basic_computer_games/slots.output +20 -0
- data/test/integration/tests/basic_computer_games/splat.bas +128 -0
- data/test/integration/tests/basic_computer_games/splat.input +9 -0
- data/test/integration/tests/basic_computer_games/splat.output +61 -0
- data/test/integration/tests/basic_computer_games/stars.bas +54 -0
- data/test/integration/tests/basic_computer_games/stars.input +15 -0
- data/test/integration/tests/basic_computer_games/stars.output +70 -0
- data/test/integration/tests/basic_computer_games/stock.bas +232 -0
- data/test/integration/tests/basic_computer_games/stock.input +30 -0
- data/test/integration/tests/basic_computer_games/stock.output +156 -0
- data/test/integration/tests/basic_computer_games/superstartrek.bas +425 -0
- data/test/integration/tests/basic_computer_games/superstartrek.input +21 -0
- data/test/integration/tests/basic_computer_games/superstartrek.output +151 -0
- data/test/integration/tests/basic_computer_games/superstartrekins.bas +127 -0
- data/test/integration/tests/basic_computer_games/superstartrekins.input +1 -0
- data/test/integration/tests/basic_computer_games/superstartrekins.output +134 -0
- data/test/integration/tests/basic_computer_games/synonym.bas +53 -0
- data/test/integration/tests/basic_computer_games/synonym.input +13 -0
- data/test/integration/tests/basic_computer_games/synonym.output +57 -0
- data/test/integration/tests/basic_computer_games/target.bas +51 -0
- data/test/integration/tests/basic_computer_games/target.input +2 -0
- data/test/integration/tests/basic_computer_games/target.output +39 -0
- data/test/integration/tests/basic_computer_games/tictac1.bas +69 -0
- data/test/integration/tests/basic_computer_games/tictac1.input +10 -0
- data/test/integration/tests/basic_computer_games/tictac1.output +49 -0
- data/test/integration/tests/basic_computer_games/tictac2.bas +114 -0
- data/test/integration/tests/basic_computer_games/tictac2.input +6 -0
- data/test/integration/tests/basic_computer_games/tictac2.output +104 -0
- data/test/integration/tests/basic_computer_games/towers.bas +125 -0
- data/test/integration/tests/basic_computer_games/towers.input +9 -0
- data/test/integration/tests/basic_computer_games/towers.output +70 -0
- data/test/integration/tests/basic_computer_games/train.bas +24 -0
- data/test/integration/tests/basic_computer_games/train.input +4 -0
- data/test/integration/tests/basic_computer_games/train.output +23 -0
- data/test/integration/tests/basic_computer_games/trap.bas +49 -0
- data/test/integration/tests/basic_computer_games/trap.input +7 -0
- data/test/integration/tests/basic_computer_games/trap.output +40 -0
- data/test/integration/tests/basic_computer_games/war.bas +68 -0
- data/test/integration/tests/basic_computer_games/war.input +11 -0
- data/test/integration/tests/basic_computer_games/war.output +54 -0
- data/test/integration/tests/basic_computer_games/weekday.bas +150 -0
- data/test/integration/tests/basic_computer_games/weekday.input +2 -0
- data/test/integration/tests/basic_computer_games/weekday.output +28 -0
- data/test/integration/tests/basic_computer_games/word.bas +65 -0
- data/test/integration/tests/basic_computer_games/word.input +6 -0
- data/test/integration/tests/basic_computer_games/word.output +0 -0
- data/test/integration/tests/fast/abs.bas +5 -0
- data/test/integration/tests/fast/abs.input +0 -0
- data/test/integration/tests/fast/abs.output +5 -0
- data/test/integration/tests/fast/add.bas +5 -0
- data/test/integration/tests/fast/add.input +0 -0
- data/test/integration/tests/fast/add.output +5 -0
- data/test/integration/tests/fast/and.bas +5 -0
- data/test/integration/tests/fast/and.input +0 -0
- data/test/integration/tests/fast/and.output +5 -0
- data/test/integration/tests/fast/array.bas +11 -0
- data/test/integration/tests/fast/array.input +0 -0
- data/test/integration/tests/fast/array.output +6 -0
- data/test/integration/tests/fast/asc.bas +1 -0
- data/test/integration/tests/fast/asc.input +0 -0
- data/test/integration/tests/fast/asc.output +1 -0
- data/test/integration/tests/fast/chr.bas +1 -0
- data/test/integration/tests/fast/chr.input +0 -0
- data/test/integration/tests/fast/chr.output +1 -0
- data/test/integration/tests/fast/cos.bas +1 -0
- data/test/integration/tests/fast/cos.input +0 -0
- data/test/integration/tests/fast/cos.output +1 -0
- data/test/integration/tests/fast/def_fn.bas +9 -0
- data/test/integration/tests/fast/def_fn.input +0 -0
- data/test/integration/tests/fast/def_fn.output +5 -0
- data/test/integration/tests/fast/divide.bas +5 -0
- data/test/integration/tests/fast/divide.input +0 -0
- data/test/integration/tests/fast/divide.output +5 -0
- data/test/integration/tests/fast/end.bas +3 -0
- data/test/integration/tests/fast/end.input +0 -0
- data/test/integration/tests/fast/end.output +1 -0
- data/test/integration/tests/fast/eq.bas +3 -0
- data/test/integration/tests/fast/eq.input +0 -0
- data/test/integration/tests/fast/eq.output +3 -0
- data/test/integration/tests/fast/exp.bas +2 -0
- data/test/integration/tests/fast/exp.input +0 -0
- data/test/integration/tests/fast/exp.output +2 -0
- data/test/integration/tests/fast/float.bas +3 -0
- data/test/integration/tests/fast/float.input +0 -0
- data/test/integration/tests/fast/float.output +2 -0
- data/test/integration/tests/fast/for_next.bas +61 -0
- data/test/integration/tests/fast/for_next.input +0 -0
- data/test/integration/tests/fast/for_next.output +46 -0
- data/test/integration/tests/fast/ge.bas +3 -0
- data/test/integration/tests/fast/ge.input +0 -0
- data/test/integration/tests/fast/ge.output +3 -0
- data/test/integration/tests/fast/gosub_return.bas +10 -0
- data/test/integration/tests/fast/gosub_return.input +0 -0
- data/test/integration/tests/fast/gosub_return.output +4 -0
- data/test/integration/tests/fast/goto.bas +3 -0
- data/test/integration/tests/fast/goto.input +0 -0
- data/test/integration/tests/fast/goto.output +1 -0
- data/test/integration/tests/fast/gt.bas +3 -0
- data/test/integration/tests/fast/gt.input +0 -0
- data/test/integration/tests/fast/gt.output +3 -0
- data/test/integration/tests/fast/if.bas +25 -0
- data/test/integration/tests/fast/if.input +0 -0
- data/test/integration/tests/fast/if.output +8 -0
- data/test/integration/tests/fast/input.bas +24 -0
- data/test/integration/tests/fast/input.input +10 -0
- data/test/integration/tests/fast/input.output +28 -0
- data/test/integration/tests/fast/int.bas +5 -0
- data/test/integration/tests/fast/int.input +0 -0
- data/test/integration/tests/fast/int.output +5 -0
- data/test/integration/tests/fast/integer_plus_string.bas +1 -0
- data/test/integration/tests/fast/integer_plus_string.input +0 -0
- data/test/integration/tests/fast/integer_plus_string.output +1 -0
- data/test/integration/tests/fast/invalid_argument.bas +1 -0
- data/test/integration/tests/fast/invalid_argument.input +0 -0
- data/test/integration/tests/fast/invalid_argument.output +1 -0
- data/test/integration/tests/fast/le.bas +3 -0
- data/test/integration/tests/fast/le.input +0 -0
- data/test/integration/tests/fast/le.output +3 -0
- data/test/integration/tests/fast/left.bas +1 -0
- data/test/integration/tests/fast/left.input +0 -0
- data/test/integration/tests/fast/left.output +1 -0
- data/test/integration/tests/fast/len.bas +2 -0
- data/test/integration/tests/fast/len.input +0 -0
- data/test/integration/tests/fast/len.output +2 -0
- data/test/integration/tests/fast/let.bas +6 -0
- data/test/integration/tests/fast/let.input +0 -0
- data/test/integration/tests/fast/let.output +4 -0
- data/test/integration/tests/fast/log.bas +1 -0
- data/test/integration/tests/fast/log.input +0 -0
- data/test/integration/tests/fast/log.output +1 -0
- data/test/integration/tests/fast/lt.bas +3 -0
- data/test/integration/tests/fast/lt.input +0 -0
- data/test/integration/tests/fast/lt.output +3 -0
- data/test/integration/tests/fast/math.output +0 -0
- data/test/integration/tests/fast/mid.bas +2 -0
- data/test/integration/tests/fast/mid.input +0 -0
- data/test/integration/tests/fast/mid.output +2 -0
- data/test/integration/tests/fast/multiply.bas +5 -0
- data/test/integration/tests/fast/multiply.input +0 -0
- data/test/integration/tests/fast/multiply.output +5 -0
- data/test/integration/tests/fast/ne.bas +3 -0
- data/test/integration/tests/fast/ne.input +0 -0
- data/test/integration/tests/fast/ne.output +3 -0
- data/test/integration/tests/fast/negate.bas +4 -0
- data/test/integration/tests/fast/negate.input +0 -0
- data/test/integration/tests/fast/negate.output +3 -0
- data/test/integration/tests/fast/not.bas +4 -0
- data/test/integration/tests/fast/not.input +0 -0
- data/test/integration/tests/fast/not.output +4 -0
- data/test/integration/tests/fast/on_goto.bas +6 -0
- data/test/integration/tests/fast/on_goto.input +0 -0
- data/test/integration/tests/fast/on_goto.output +2 -0
- data/test/integration/tests/fast/or.bas +5 -0
- data/test/integration/tests/fast/or.input +0 -0
- data/test/integration/tests/fast/or.output +5 -0
- data/test/integration/tests/fast/parentheses.bas +1 -0
- data/test/integration/tests/fast/parentheses.input +0 -0
- data/test/integration/tests/fast/parentheses.output +1 -0
- data/test/integration/tests/fast/power.bas +4 -0
- data/test/integration/tests/fast/power.input +0 -0
- data/test/integration/tests/fast/power.output +4 -0
- data/test/integration/tests/fast/print.bas +6 -0
- data/test/integration/tests/fast/print.input +0 -0
- data/test/integration/tests/fast/print.output +4 -0
- data/test/integration/tests/fast/read_data.bas +15 -0
- data/test/integration/tests/fast/read_data.input +0 -0
- data/test/integration/tests/fast/read_data.output +4 -0
- data/test/integration/tests/fast/rem.bas +1 -0
- data/test/integration/tests/fast/rem.input +0 -0
- data/test/integration/tests/fast/rem.output +0 -0
- data/test/integration/tests/fast/right.bas +1 -0
- data/test/integration/tests/fast/right.input +0 -0
- data/test/integration/tests/fast/right.output +1 -0
- data/test/integration/tests/fast/rnd.bas +5 -0
- data/test/integration/tests/fast/rnd.input +0 -0
- data/test/integration/tests/fast/rnd.output +5 -0
- data/test/integration/tests/fast/sgn.bas +5 -0
- data/test/integration/tests/fast/sgn.input +0 -0
- data/test/integration/tests/fast/sgn.output +5 -0
- data/test/integration/tests/fast/sin.bas +1 -0
- data/test/integration/tests/fast/sin.input +0 -0
- data/test/integration/tests/fast/sin.output +1 -0
- data/test/integration/tests/fast/sqr.bas +2 -0
- data/test/integration/tests/fast/sqr.input +0 -0
- data/test/integration/tests/fast/sqr.output +2 -0
- data/test/integration/tests/fast/stop.bas +3 -0
- data/test/integration/tests/fast/stop.input +0 -0
- data/test/integration/tests/fast/stop.output +2 -0
- data/test/integration/tests/fast/str.bas +3 -0
- data/test/integration/tests/fast/str.input +0 -0
- data/test/integration/tests/fast/str.output +3 -0
- data/test/integration/tests/fast/string_addition.bas +1 -0
- data/test/integration/tests/fast/string_addition.input +0 -0
- data/test/integration/tests/fast/string_addition.output +1 -0
- data/test/integration/tests/fast/string_comparisons.bas +7 -0
- data/test/integration/tests/fast/string_comparisons.input +0 -0
- data/test/integration/tests/fast/string_comparisons.output +4 -0
- data/test/integration/tests/fast/string_plus_integer.bas +1 -0
- data/test/integration/tests/fast/string_plus_integer.input +0 -0
- data/test/integration/tests/fast/string_plus_integer.output +1 -0
- data/test/integration/tests/fast/subtract.bas +5 -0
- data/test/integration/tests/fast/subtract.input +0 -0
- data/test/integration/tests/fast/subtract.output +5 -0
- data/test/integration/tests/fast/tab.bas +4 -0
- data/test/integration/tests/fast/tab.input +0 -0
- data/test/integration/tests/fast/tab.output +3 -0
- data/test/integration/tests/fast/tan.bas +1 -0
- data/test/integration/tests/fast/tan.input +0 -0
- data/test/integration/tests/fast/tan.output +1 -0
- data/test/integration/tests/fast/val.bas +3 -0
- data/test/integration/tests/fast/val.input +0 -0
- data/test/integration/tests/fast/val.output +3 -0
- data/test/spec/argument_checker_spec.rb +128 -0
- data/test/spec/basic_array_spec.rb +100 -0
- data/test/spec/basic_float_spec.rb +168 -0
- data/test/spec/basic_integer_spec.rb +270 -0
- data/test/spec/basic_numeric_spec.rb +16 -0
- data/test/spec/basic_object_spec.rb +22 -0
- data/test/spec/basic_string_spec.rb +259 -0
- data/test/spec/for_stack_spec.rb +70 -0
- data/test/spec/input_reader_spec.rb +143 -0
- data/test/spec/input_spec.rb +102 -0
- data/test/spec/line_spec.rb +18 -0
- data/test/spec/output_spec.rb +153 -0
- data/test/spec/parser_spec.rb +562 -0
- data/test/spec/program_spec.rb +45 -0
- data/test/spec/spec_helper.rb +15 -0
- data/test/spec/support/basic_numeric_helpers.rb +327 -0
- data/test/spec/support/basic_object_helpers.rb +22 -0
- data/test/spec/transcript_spec.rb +37 -0
- data/test/spec/transform_spec.rb +513 -0
- metadata +742 -0
@@ -0,0 +1,68 @@
|
|
1
|
+
LEM
|
2
|
+
CREATIVE COMPUTING MORRISTOWN, NEW JERSEY
|
3
|
+
|
4
|
+
LUNAR LANDING SIMULATION
|
5
|
+
|
6
|
+
HAVE YOU FLOWN AN APOLLO/LEM MISSION BEFORE (YES OR NO)? NO
|
7
|
+
|
8
|
+
WHICH SYSTEM OF MEASUREMENT DO YOU PREFER?
|
9
|
+
1=METRIC 0=ENGLISH
|
10
|
+
ENTER THE APPROPRIATE NUMBER? 0
|
11
|
+
|
12
|
+
|
13
|
+
YOU ARE ON A LUNAR LANDING MISSION. AS THE PILOT OF
|
14
|
+
THE LUNAR EXCURSION MODULE, YOU WILL BE EXPECTED TO
|
15
|
+
GIVE CERTAIN COMMANDS TO THE MODULE NAVIGATION SYSTEM.
|
16
|
+
THE ON-BOARD COMPUTER WILL GIVE A RUNNING ACCOUNT
|
17
|
+
OF INFORMATION NEEDED TO NAVIGATE THE SHIP.
|
18
|
+
|
19
|
+
|
20
|
+
THE ATTITUDE ANGLE CALLED FOR IS DESCRIBED AS FOLLOWS.
|
21
|
+
+ OR -180 DEGREES IS DIRECTLY AWAY FROM THE MOON
|
22
|
+
-90 DEGREES IS ON A TANGENT IN THE DIRECTION OF ORBIT
|
23
|
+
+90 DEGREES IS ON A TANGENT FROM THE DIRECTION OF ORBIT
|
24
|
+
0 (ZERO) DEGREES IS DIRECTLY TOWARD THE MOON
|
25
|
+
|
26
|
+
-180|+180
|
27
|
+
^
|
28
|
+
-90 < -+- > +90
|
29
|
+
!
|
30
|
+
0
|
31
|
+
<<<< DIRECTION OF ORBIT <<<<
|
32
|
+
|
33
|
+
------ SURFACE OF MOON ------
|
34
|
+
|
35
|
+
|
36
|
+
ALL ANGLES BETWEEN -180 AND +180 DEGREES ARE ACCEPTED.
|
37
|
+
|
38
|
+
1 FUEL UNIT = 1 SEC. AT MAX THRUST
|
39
|
+
ANY DISCREPANCIES ARE ACCOUNTED FOR IN THE USE OF FUEL
|
40
|
+
FOR AN ATTITUDE CHANGE.
|
41
|
+
AVAILABLE ENGINE POWER: 0 (ZERO) AND ANY VALUE BETWEEN
|
42
|
+
10 AND 100 PERCENT.
|
43
|
+
|
44
|
+
NEGATIVE THRUST OR TIME IS PROHIBITED.
|
45
|
+
|
46
|
+
|
47
|
+
INPUT: TIME INTERVAL IN SECONDS ------ (T)
|
48
|
+
PERCENTAGE OF THRUST ---------- (P)
|
49
|
+
ATTITUDE ANGLE IN DEGREES ----- (A)
|
50
|
+
|
51
|
+
FOR EXAMPLE:
|
52
|
+
T,P,A? 10,65,-60
|
53
|
+
TO ABORT THE MISSION AT ANY TIME, ENTER 0,0,0
|
54
|
+
|
55
|
+
OUTPUT: TOTAL TIME IN ELAPSED SECONDS
|
56
|
+
HEIGHT IN FEET
|
57
|
+
DISTANCE FROM LANDING SITE IN FEET
|
58
|
+
VERTICAL VELOCITY IN FEET/SECOND
|
59
|
+
HORIZONTAL VELOCITY IN FEET/SECOND
|
60
|
+
FUEL UNITS REMAINING
|
61
|
+
|
62
|
+
0 364800 -19283024 0 5301.638 750
|
63
|
+
T,P,A? 10,65,-60
|
64
|
+
10 364944 -1.92335e+07 28.66155 5245.354 743.5
|
65
|
+
T,P,A? 20,50,0
|
66
|
+
30 366412 -1.9135e+07 118.2137 5244.074 733.5
|
67
|
+
T,P,A?
|
68
|
+
Error on line 585: No more input
|
@@ -0,0 +1,26 @@
|
|
1
|
+
10 PRINT TAB(33);"LETTER"
|
2
|
+
20 PRINT TAB(15);"CREATIVE COMPUTING MORRISTOWN, NEW JERSEY"
|
3
|
+
30 PRINT:PRINT:PRINT
|
4
|
+
100 PRINT "LETTER GUESSING GAME": PRINT
|
5
|
+
210 PRINT "I'LL THINK OF A LETTER OF THE ALPHABET, A TO Z."
|
6
|
+
220 PRINT "TRY TO GUESS MY LETTER AND I'LL GIVE YOU CLUES"
|
7
|
+
230 PRINT "AS TO HOW CLOSE YOU'RE GETTING TO MY LETTER."
|
8
|
+
310 L=65+INT(RND(1)*26)
|
9
|
+
320 G=0
|
10
|
+
340 PRINT: PRINT "O.K., I HAVE A LETTER. START GUESSING."
|
11
|
+
410 PRINT: PRINT "WHAT IS YOUR GUESS";
|
12
|
+
420 G=G+1
|
13
|
+
430 INPUT A$: A=ASC(A$): PRINT
|
14
|
+
440 IF A=L THEN 500
|
15
|
+
450 IF A>L THEN 480
|
16
|
+
460 PRINT "TOO LOW. TRY A HIGHER LETTER.": GOTO 410
|
17
|
+
480 PRINT "TOO HIGH. TRY A LOWER LETTER.": GOTO 410
|
18
|
+
500 PRINT: PRINT "YOU GOT IT IN";G;"GUESSES!!"
|
19
|
+
504 IF G<=5 THEN 508
|
20
|
+
506 PRINT "BUT IT SHOULDN'T TAKE MORE THAN 5 GUESSES!": GOTO 515
|
21
|
+
508 PRINT "GOOD JOB !!!!!"
|
22
|
+
510 FOR N=1 TO 15: PRINT CHR$(7);: NEXT N
|
23
|
+
515 PRINT
|
24
|
+
520 PRINT "LET'S PLAN AGAIN....."
|
25
|
+
530 GOTO 310
|
26
|
+
999 END
|
@@ -0,0 +1,123 @@
|
|
1
|
+
LETTER
|
2
|
+
CREATIVE COMPUTING MORRISTOWN, NEW JERSEY
|
3
|
+
|
4
|
+
|
5
|
+
|
6
|
+
LETTER GUESSING GAME
|
7
|
+
|
8
|
+
I'LL THINK OF A LETTER OF THE ALPHABET, A TO Z.
|
9
|
+
TRY TO GUESS MY LETTER AND I'LL GIVE YOU CLUES
|
10
|
+
AS TO HOW CLOSE YOU'RE GETTING TO MY LETTER.
|
11
|
+
|
12
|
+
O.K., I HAVE A LETTER. START GUESSING.
|
13
|
+
|
14
|
+
WHAT IS YOUR GUESS? M
|
15
|
+
|
16
|
+
TOO LOW. TRY A HIGHER LETTER.
|
17
|
+
|
18
|
+
WHAT IS YOUR GUESS? T
|
19
|
+
|
20
|
+
TOO HIGH. TRY A LOWER LETTER.
|
21
|
+
|
22
|
+
WHAT IS YOUR GUESS? P
|
23
|
+
|
24
|
+
TOO HIGH. TRY A LOWER LETTER.
|
25
|
+
|
26
|
+
WHAT IS YOUR GUESS? O
|
27
|
+
|
28
|
+
|
29
|
+
YOU GOT IT IN 4 GUESSES!!
|
30
|
+
GOOD JOB !!!!!
|
31
|
+
|
32
|
+
LET'S PLAN AGAIN.....
|
33
|
+
|
34
|
+
O.K., I HAVE A LETTER. START GUESSING.
|
35
|
+
|
36
|
+
WHAT IS YOUR GUESS? A
|
37
|
+
|
38
|
+
TOO LOW. TRY A HIGHER LETTER.
|
39
|
+
|
40
|
+
WHAT IS YOUR GUESS? B
|
41
|
+
|
42
|
+
TOO LOW. TRY A HIGHER LETTER.
|
43
|
+
|
44
|
+
WHAT IS YOUR GUESS? C
|
45
|
+
|
46
|
+
TOO LOW. TRY A HIGHER LETTER.
|
47
|
+
|
48
|
+
WHAT IS YOUR GUESS? D
|
49
|
+
|
50
|
+
TOO LOW. TRY A HIGHER LETTER.
|
51
|
+
|
52
|
+
WHAT IS YOUR GUESS? E
|
53
|
+
|
54
|
+
TOO LOW. TRY A HIGHER LETTER.
|
55
|
+
|
56
|
+
WHAT IS YOUR GUESS? F
|
57
|
+
|
58
|
+
TOO LOW. TRY A HIGHER LETTER.
|
59
|
+
|
60
|
+
WHAT IS YOUR GUESS? G
|
61
|
+
|
62
|
+
TOO LOW. TRY A HIGHER LETTER.
|
63
|
+
|
64
|
+
WHAT IS YOUR GUESS? H
|
65
|
+
|
66
|
+
TOO LOW. TRY A HIGHER LETTER.
|
67
|
+
|
68
|
+
WHAT IS YOUR GUESS? I
|
69
|
+
|
70
|
+
TOO LOW. TRY A HIGHER LETTER.
|
71
|
+
|
72
|
+
WHAT IS YOUR GUESS? J
|
73
|
+
|
74
|
+
TOO LOW. TRY A HIGHER LETTER.
|
75
|
+
|
76
|
+
WHAT IS YOUR GUESS? K
|
77
|
+
|
78
|
+
TOO LOW. TRY A HIGHER LETTER.
|
79
|
+
|
80
|
+
WHAT IS YOUR GUESS? L
|
81
|
+
|
82
|
+
TOO LOW. TRY A HIGHER LETTER.
|
83
|
+
|
84
|
+
WHAT IS YOUR GUESS? M
|
85
|
+
|
86
|
+
TOO LOW. TRY A HIGHER LETTER.
|
87
|
+
|
88
|
+
WHAT IS YOUR GUESS? N
|
89
|
+
|
90
|
+
TOO LOW. TRY A HIGHER LETTER.
|
91
|
+
|
92
|
+
WHAT IS YOUR GUESS? O
|
93
|
+
|
94
|
+
TOO LOW. TRY A HIGHER LETTER.
|
95
|
+
|
96
|
+
WHAT IS YOUR GUESS? P
|
97
|
+
|
98
|
+
TOO LOW. TRY A HIGHER LETTER.
|
99
|
+
|
100
|
+
WHAT IS YOUR GUESS? Q
|
101
|
+
|
102
|
+
TOO LOW. TRY A HIGHER LETTER.
|
103
|
+
|
104
|
+
WHAT IS YOUR GUESS? R
|
105
|
+
|
106
|
+
TOO LOW. TRY A HIGHER LETTER.
|
107
|
+
|
108
|
+
WHAT IS YOUR GUESS? S
|
109
|
+
|
110
|
+
|
111
|
+
YOU GOT IT IN 19 GUESSES!!
|
112
|
+
BUT IT SHOULDN'T TAKE MORE THAN 5 GUESSES!
|
113
|
+
|
114
|
+
LET'S PLAN AGAIN.....
|
115
|
+
|
116
|
+
O.K., I HAVE A LETTER. START GUESSING.
|
117
|
+
|
118
|
+
WHAT IS YOUR GUESS? T
|
119
|
+
|
120
|
+
TOO HIGH. TRY A LOWER LETTER.
|
121
|
+
|
122
|
+
WHAT IS YOUR GUESS?
|
123
|
+
Error on line 430: No more input
|
@@ -0,0 +1,66 @@
|
|
1
|
+
2 PRINT TAB(34);"LIFE"
|
2
|
+
4 PRINT TAB(15);"CREATIVE COMPUTING MORRISTOWN, NEW JERSEY"
|
3
|
+
6 PRINT: PRINT: PRINT
|
4
|
+
8 PRINT "ENTER YOUR PATTERN:"
|
5
|
+
9 X1=1: Y1=1: X2=24: Y2=70
|
6
|
+
10 DIM A(24,70),B$(24)
|
7
|
+
20 C=1
|
8
|
+
30 INPUT B$(C)
|
9
|
+
40 IF B$(C)="DONE" THEN B$(C)="": GOTO 80
|
10
|
+
50 IF LEFT$(B$(C),1)="." THEN B$(C)=" "+RIGHT$(B$(C),LEN(B$(C))-1)
|
11
|
+
60 C=C+1
|
12
|
+
70 GOTO 30
|
13
|
+
80 C=C-1: L=0
|
14
|
+
90 FOR X=1 TO C-1
|
15
|
+
100 IF LEN(B$(X))>L THEN L=LEN(B$(X))
|
16
|
+
110 NEXT X
|
17
|
+
120 X1=11-C/2
|
18
|
+
130 Y1=33-L/2
|
19
|
+
140 FOR X=1 TO C
|
20
|
+
150 FOR Y=1 TO LEN(B$(X))
|
21
|
+
160 IF MID$(B$(X),Y,1)<>" " THEN A(X1+X,Y1+Y)=1:P=P+1
|
22
|
+
170 NEXT Y
|
23
|
+
180 NEXT X
|
24
|
+
200 PRINT:PRINT:PRINT
|
25
|
+
210 PRINT "GENERATION:";G,"POPULATION:";P;: IF I9 THEN PRINT "INVALID!";
|
26
|
+
215 X3=24:Y3=70:X4=1: Y4=1: P=0
|
27
|
+
220 G=G+1
|
28
|
+
225 FOR X=1 TO X1-1: PRINT: NEXT X
|
29
|
+
230 FOR X=X1 TO X2
|
30
|
+
240 PRINT
|
31
|
+
250 FOR Y=Y1 TO Y2
|
32
|
+
253 IF A(X,Y)=2 THEN A(X,Y)=0:GOTO 270
|
33
|
+
256 IF A(X,Y)=3 THEN A(X,Y)=1:GOTO 261
|
34
|
+
260 IF A(X,Y)<>1 THEN 270
|
35
|
+
261 PRINT TAB(Y);"*";
|
36
|
+
262 IF X<X3 THEN X3=X
|
37
|
+
264 IF X>X4 THEN X4=X
|
38
|
+
266 IF Y<Y3 THEN Y3=Y
|
39
|
+
268 IF Y>Y4 THEN Y4=Y
|
40
|
+
270 NEXT Y
|
41
|
+
290 NEXT X
|
42
|
+
295 FOR X=X2+1 TO 24: PRINT: NEXT X
|
43
|
+
299 X1=X3: X2=X4: Y1=Y3: Y2=Y4
|
44
|
+
301 IF X1<3 THEN X1=3:I9=-1
|
45
|
+
303 IF X2>22 THEN X2=22:I9=-1
|
46
|
+
305 IF Y1<3 THEN Y1=3:I9=-1
|
47
|
+
307 IF Y2>68 THEN Y2=68:I9=-1
|
48
|
+
309 P=0
|
49
|
+
500 FOR X=X1-1 TO X2+1
|
50
|
+
510 FOR Y=Y1-1 TO Y2+1
|
51
|
+
520 C=0
|
52
|
+
530 FOR I=X-1 TO X+1
|
53
|
+
540 FOR J=Y-1 TO Y+1
|
54
|
+
550 IF A(I,J)=1 OR A(I,J)=2 THEN C=C+1
|
55
|
+
560 NEXT J
|
56
|
+
570 NEXT I
|
57
|
+
580 IF A(X,Y)=0 THEN 610
|
58
|
+
590 IF C<3 OR C>4 THEN A(X,Y)=2: GOTO 600
|
59
|
+
595 P=P+1
|
60
|
+
600 GOTO 620
|
61
|
+
610 IF C=3 THEN A(X,Y)=3:P=P+1
|
62
|
+
620 NEXT Y
|
63
|
+
630 NEXT X
|
64
|
+
635 X1=X1-1:Y1=Y1-1:X2=X2+1:Y2=Y2+1
|
65
|
+
640 GOTO 210
|
66
|
+
650 END
|
@@ -0,0 +1 @@
|
|
1
|
+
max_output_lines: 200
|
@@ -0,0 +1,200 @@
|
|
1
|
+
LIFE
|
2
|
+
CREATIVE COMPUTING MORRISTOWN, NEW JERSEY
|
3
|
+
|
4
|
+
|
5
|
+
|
6
|
+
ENTER YOUR PATTERN:
|
7
|
+
? * ** *
|
8
|
+
? ** *
|
9
|
+
? **
|
10
|
+
? DONE
|
11
|
+
|
12
|
+
|
13
|
+
|
14
|
+
GENERATION: 0 POPULATION: 9
|
15
|
+
|
16
|
+
|
17
|
+
|
18
|
+
|
19
|
+
|
20
|
+
|
21
|
+
|
22
|
+
|
23
|
+
|
24
|
+
* ** *
|
25
|
+
** *
|
26
|
+
**
|
27
|
+
|
28
|
+
|
29
|
+
|
30
|
+
|
31
|
+
|
32
|
+
|
33
|
+
|
34
|
+
|
35
|
+
|
36
|
+
|
37
|
+
|
38
|
+
GENERATION: 1 POPULATION: 10
|
39
|
+
|
40
|
+
|
41
|
+
|
42
|
+
|
43
|
+
|
44
|
+
|
45
|
+
|
46
|
+
|
47
|
+
|
48
|
+
* ***
|
49
|
+
***
|
50
|
+
***
|
51
|
+
|
52
|
+
|
53
|
+
|
54
|
+
|
55
|
+
|
56
|
+
|
57
|
+
|
58
|
+
|
59
|
+
|
60
|
+
|
61
|
+
GENERATION: 2 POPULATION: 11
|
62
|
+
|
63
|
+
|
64
|
+
|
65
|
+
|
66
|
+
|
67
|
+
|
68
|
+
|
69
|
+
|
70
|
+
*
|
71
|
+
** *
|
72
|
+
* *
|
73
|
+
****
|
74
|
+
*
|
75
|
+
|
76
|
+
|
77
|
+
|
78
|
+
|
79
|
+
|
80
|
+
|
81
|
+
|
82
|
+
|
83
|
+
|
84
|
+
GENERATION: 3 POPULATION: 12
|
85
|
+
|
86
|
+
|
87
|
+
|
88
|
+
|
89
|
+
|
90
|
+
|
91
|
+
|
92
|
+
|
93
|
+
**
|
94
|
+
* *
|
95
|
+
*
|
96
|
+
*****
|
97
|
+
* *
|
98
|
+
|
99
|
+
|
100
|
+
|
101
|
+
|
102
|
+
|
103
|
+
|
104
|
+
|
105
|
+
|
106
|
+
|
107
|
+
GENERATION: 4 POPULATION: 14
|
108
|
+
|
109
|
+
|
110
|
+
|
111
|
+
|
112
|
+
|
113
|
+
|
114
|
+
|
115
|
+
|
116
|
+
**
|
117
|
+
* *
|
118
|
+
* *
|
119
|
+
** **
|
120
|
+
** **
|
121
|
+
|
122
|
+
|
123
|
+
|
124
|
+
|
125
|
+
|
126
|
+
|
127
|
+
|
128
|
+
|
129
|
+
|
130
|
+
GENERATION: 5 POPULATION: 15
|
131
|
+
|
132
|
+
|
133
|
+
|
134
|
+
|
135
|
+
|
136
|
+
|
137
|
+
|
138
|
+
|
139
|
+
**
|
140
|
+
** *
|
141
|
+
** * *
|
142
|
+
* *
|
143
|
+
** **
|
144
|
+
|
145
|
+
|
146
|
+
|
147
|
+
|
148
|
+
|
149
|
+
|
150
|
+
|
151
|
+
|
152
|
+
|
153
|
+
GENERATION: 6 POPULATION: 14
|
154
|
+
|
155
|
+
|
156
|
+
|
157
|
+
|
158
|
+
|
159
|
+
|
160
|
+
|
161
|
+
|
162
|
+
***
|
163
|
+
* *
|
164
|
+
* * **
|
165
|
+
* *
|
166
|
+
***
|
167
|
+
|
168
|
+
|
169
|
+
|
170
|
+
|
171
|
+
|
172
|
+
|
173
|
+
|
174
|
+
|
175
|
+
|
176
|
+
GENERATION: 7 POPULATION: 15
|
177
|
+
|
178
|
+
|
179
|
+
|
180
|
+
|
181
|
+
|
182
|
+
|
183
|
+
|
184
|
+
*
|
185
|
+
***
|
186
|
+
* **
|
187
|
+
**
|
188
|
+
**
|
189
|
+
***
|
190
|
+
*
|
191
|
+
|
192
|
+
|
193
|
+
|
194
|
+
|
195
|
+
|
196
|
+
|
197
|
+
|
198
|
+
|
199
|
+
GENERATION: 8 POPULATION: 21
|
200
|
+
Error on line 225: Maximum output lines reached
|
@@ -0,0 +1,83 @@
|
|
1
|
+
2 PRINT TAB(33);"LIFE2"
|
2
|
+
4 PRINT TAB(15);"CREATIVE COMPUTING MORRISTOWN, NEW JERSEY"
|
3
|
+
6 PRINT: PRINT: PRINT
|
4
|
+
7 DIM N(6,6),K(18),A(16),X(2),Y(2)
|
5
|
+
8 DATA 3,102,103,120,130,121,112,111,12
|
6
|
+
9 DATA 21,30,1020,1030,1011,1021,1003,1002,1012
|
7
|
+
10 FOR M=1 TO 18: READ K(M): NEXT M
|
8
|
+
13 DATA -1,0,1,0,0,-1,0,1,-1,-1,1,-1,-1,1,1,1
|
9
|
+
14 FOR O1= 1 TO 16: READ A(O1): NEXT O1
|
10
|
+
20 GOTO 500
|
11
|
+
50 FOR J=1 TO 5
|
12
|
+
51 FOR K=1 TO 5
|
13
|
+
55 IF N(J,K)>99 THEN GOSUB 200
|
14
|
+
60 NEXT K
|
15
|
+
65 NEXT J
|
16
|
+
90 K=0: M2=0: M3=0
|
17
|
+
99 FOR J=0 TO 6: PRINT
|
18
|
+
100 FOR K=0 TO 6
|
19
|
+
101 IF J<>0 THEN IF J<>6 THEN 105
|
20
|
+
102 IF K=6 THEN PRINT 0;: GOTO 125
|
21
|
+
103 PRINT K;: GOTO 120
|
22
|
+
105 IF K<>0 THEN IF K<>6 THEN 110
|
23
|
+
106 IF J=6 THEN PRINT 0: GOTO 126
|
24
|
+
107 PRINT J;: GOTO 120
|
25
|
+
110 GOSUB 300
|
26
|
+
120 NEXT K
|
27
|
+
125 NEXT J
|
28
|
+
126 RETURN
|
29
|
+
200 B=1: IF N(J,K)>999 THEN B=10
|
30
|
+
220 FOR O1= 1 TO 15 STEP 2
|
31
|
+
230 N(J+A(O1),K+A(O1+1))=N(J+A(O1),K+A(O1+1))+B
|
32
|
+
231 NEXT O1
|
33
|
+
239 RETURN
|
34
|
+
300 IF N(J,K)<3 THEN 399
|
35
|
+
305 FOR O1=1 TO 18
|
36
|
+
310 IF N(J,K)=K(O1) THEN 350
|
37
|
+
315 NEXT O1
|
38
|
+
320 GOTO 399
|
39
|
+
350 IF O1>9 THEN 360
|
40
|
+
351 N(J,K)=100: M2=M2+1: PRINT " * ";
|
41
|
+
355 RETURN
|
42
|
+
360 N(J,K)=1000: M3=M3+1: PRINT " # ";
|
43
|
+
365 RETURN
|
44
|
+
399 N(J,K)=0: PRINT " ";: RETURN
|
45
|
+
500 PRINT TAB(10);"U.B. LIFE GAME"
|
46
|
+
505 M2=0: M3=0
|
47
|
+
510 FOR J=1 TO 5
|
48
|
+
511 FOR K=1 TO 5
|
49
|
+
515 N(J,K)=0
|
50
|
+
516 NEXT K
|
51
|
+
517 NEXT J
|
52
|
+
519 FOR B=1 TO 2: P1=3: IF B=2 THEN P1=30
|
53
|
+
520 PRINT:PRINT "PLAYER";B;" - 3 LIVE PIECES."
|
54
|
+
535 FOR K1=1 TO 3: GOSUB 700
|
55
|
+
540 N(X(B),Y(B))=P1: NEXT K1
|
56
|
+
542 NEXT B
|
57
|
+
559 GOSUB 90
|
58
|
+
560 PRINT: GOSUB 50
|
59
|
+
570 IF M2=0 THEN IF M3=0 THEN 574
|
60
|
+
571 IF M3=0 THEN B=1: GOTO 575
|
61
|
+
572 IF M2=0 THEN B=2: GOTO 575
|
62
|
+
573 GOTO 580
|
63
|
+
574 PRINT: PRINT "A DRAW":GOTO 800
|
64
|
+
575 PRINT: PRINT "PLAYER";B;"IS THE WINNER":GOTO 800
|
65
|
+
580 FOR B=1 TO 2: PRINT: PRINT: PRINT "PLAYER";B;: GOSUB 700
|
66
|
+
581 IF B=99 THEN 560
|
67
|
+
582 NEXT B
|
68
|
+
586 N(X(1),Y(1))=100: N(X(2),Y(2))=1000
|
69
|
+
596 GOTO 560
|
70
|
+
700 PRINT "X,Y":PRINT"XXXXXX";CHR$(13);"$$$$$$";CHR$(13);"&&&&&&";
|
71
|
+
701 PRINT CHR$(13);: INPUT Y(B),X(B)
|
72
|
+
705 IF X(B)<=5 THEN IF X(B)>0 THEN 708
|
73
|
+
706 GOTO 750
|
74
|
+
708 IF Y(B)<=5 THEN IF Y(B)>0 THEN 715
|
75
|
+
710 GOTO 750
|
76
|
+
715 IF N(X(B),Y(B))<>0 THEN 750
|
77
|
+
720 IF B=1 THEN RETURN
|
78
|
+
725 IF X(1)=X(2) THEN IF Y(1)=Y(2) THEN 740
|
79
|
+
730 RETURN
|
80
|
+
740 PRINT "SAME COORD. SET TO 0"
|
81
|
+
741 N(X(B)+1,Y(B)+1)=0: B=99: RETURN
|
82
|
+
750 PRINT "ILLEGAL COORDS. RETYPE": GOTO 700
|
83
|
+
999 END
|