diff --git a/examples/19_random_input_output_python/config/config.json b/examples/19_random_input_output_python/config/config.json new file mode 100644 index 0000000..00e7746 --- /dev/null +++ b/examples/19_random_input_output_python/config/config.json @@ -0,0 +1,123 @@ +{ + "required_capabilities": "python", + + "testcases" : [ + { + "title" : "Custom Input 01", + "details" : "python3 *.py custom_test_input_01.txt", + "command" : "python3 *.py custom_test_input_01.txt", + "solution_commands" : ["python3 solution.py custom_test_input_01.txt 1> output.txt"], + "points" : 5, + "hidden" : true, + "validation" : [ + { + "method" : "diff", + "actual_file" : "STDOUT.txt", + "description" : "Program Output", + "expected_file" : "output.txt" + } + ] + }, + { + "title" : "Custom Input 02", + "details" : "python3 *.py < custom_test_input_02.txt", + "command" : "python3 *.py < custom_test_input_02.txt", + "solution_commands" : ["python3 solution.py < custom_test_input_02.txt 1> output.txt"], + "points" : 5, + "hidden" : true, + "validation" : [ + { + "method" : "diff", + "actual_file" : "STDOUT.txt", + "description" : "Program Output", + "expected_file" : "output.txt" + } + ] + }, + { + "title" : "Random Input #1", + "input_generation_commands": [ + "python3 generator.py 1> randominput.txt" + ], + "command" : "python3 *.py < randominput.txt", + "solution_commands" : ["python3 solution.py < randominput.txt > output.txt"], + "points" : 4, + "validation" : [ + { + "method" : "diff", + "actual_file" : "STDOUT.txt", + "description" : "Program Output", + "expected_file" : "output.txt" + } + ] + }, + { + "title" : "Random Input #2", + "input_generation_commands": [ + "python3 generator.py 1> randominput.txt" + ], + "command" : "python3 *.py < randominput.txt", + "solution_commands" : ["python3 solution.py < randominput.txt > output.txt"], + "points" : 4, + "validation" : [ + { + "method" : "diff", + "actual_file" : "STDOUT.txt", + "description" : "Program Output", + "expected_file" : "output.txt" + } + ] + }, + { + "title" : "Random Input #3", + "input_generation_commands": [ + "python3 generator.py 1> randominput.txt" + ], + "command" : "python3 *.py < randominput.txt", + "solution_commands" : ["python3 solution.py < randominput.txt > output.txt"], + "points" : 4, + "validation" : [ + { + "method" : "diff", + "actual_file" : "STDOUT.txt", + "description" : "Program Output", + "expected_file" : "output.txt" + } + ] + }, + { + "title" : "Random Input #4", + "input_generation_commands": [ + "python3 generator.py 1> randominput.txt" + ], + "command" : "python3 *.py < randominput.txt", + "solution_commands" : ["python3 solution.py < randominput.txt > output.txt"], + "points" : 4, + "validation" : [ + { + "method" : "diff", + "actual_file" : "STDOUT.txt", + "description" : "Program Output", + "expected_file" : "output.txt" + } + ] + }, + { + "title" : "Random Input #5", + "input_generation_commands": [ + "python3 generator.py 1> randominput.txt" + ], + "command" : "python3 *.py < randominput.txt", + "solution_commands" : ["python3 solution.py < randominput.txt > output.txt"], + "points" : 4, + "validation" : [ + { + "method" : "diff", + "actual_file" : "STDOUT.txt", + "description" : "Program Output", + "expected_file" : "output.txt" + } + ] + } + ] +} diff --git a/examples/19_random_input_output_python/config/instructor_solution/generator.py b/examples/19_random_input_output_python/config/instructor_solution/generator.py new file mode 100644 index 0000000..eef8091 --- /dev/null +++ b/examples/19_random_input_output_python/config/instructor_solution/generator.py @@ -0,0 +1,12 @@ +import random + + +def generating_random_number(lower, upper): + return random.randint(lower, upper) + + +n = generating_random_number(1, 20) + +print(n) +for i in range(n): + print(generating_random_number(1, 100)) diff --git a/examples/19_random_input_output_python/config/instructor_solution/solution.py b/examples/19_random_input_output_python/config/instructor_solution/solution.py new file mode 100644 index 0000000..4eeed87 --- /dev/null +++ b/examples/19_random_input_output_python/config/instructor_solution/solution.py @@ -0,0 +1,16 @@ +def generate_total_sum(arr): + sum = 0 + for i in arr: + sum += i + + return sum + + +n = int(input()) +arr = [] + +for i in range(n): + ele = int(input()) + arr.append(ele) + +print(generate_total_sum(arr)) diff --git a/examples/19_random_input_output_python/config/test_input/custom_test_input_01.txt b/examples/19_random_input_output_python/config/test_input/custom_test_input_01.txt new file mode 100644 index 0000000..eb7ae72 --- /dev/null +++ b/examples/19_random_input_output_python/config/test_input/custom_test_input_01.txt @@ -0,0 +1,4 @@ +3 +53 +93 +71 diff --git a/examples/19_random_input_output_python/config/test_input/custom_test_input_02.txt b/examples/19_random_input_output_python/config/test_input/custom_test_input_02.txt new file mode 100644 index 0000000..c6653e9 --- /dev/null +++ b/examples/19_random_input_output_python/config/test_input/custom_test_input_02.txt @@ -0,0 +1,11 @@ +10 +72 +83 +22 +58 +70 +51 +74 +69 +9 +85 diff --git a/examples/19_random_input_output_python/submissions/correct_solution.py b/examples/19_random_input_output_python/submissions/correct_solution.py new file mode 100644 index 0000000..4eeed87 --- /dev/null +++ b/examples/19_random_input_output_python/submissions/correct_solution.py @@ -0,0 +1,16 @@ +def generate_total_sum(arr): + sum = 0 + for i in arr: + sum += i + + return sum + + +n = int(input()) +arr = [] + +for i in range(n): + ele = int(input()) + arr.append(ele) + +print(generate_total_sum(arr))