@jutge.org/toolkit 4.4.16 → 4.4.19

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.
Files changed (40) hide show
  1. package/README.md +1 -0
  2. package/assets/problems/quizzes/demo-quiz.pbm/README.md +1 -0
  3. package/assets/problems/quizzes/demo-quiz.pbm/ca/award.png +0 -0
  4. package/assets/problems/quizzes/demo-quiz.pbm/ca/quiz.yml +1 -1
  5. package/assets/problems/quizzes/demo-quiz.pbm/ca/single-choice.yml +9 -1
  6. package/assets/problems/quizzes/demo-quiz.pbm/ca/some-drawing.svg +150 -0
  7. package/assets/problems/quizzes/demo-quiz.pbm/ca/some-image.png +0 -0
  8. package/assets/problems/quizzes/demo-quiz.pbm/en/quiz.yml +1 -1
  9. package/assets/problems/quizzes/demo-quiz.pbm/en/single-choice.yml +9 -1
  10. package/assets/problems/quizzes/demo-quiz.pbm/en/some-drawing.svg +150 -0
  11. package/assets/problems/quizzes/demo-quiz.pbm/en/some-image.png +0 -0
  12. package/assets/problems/quizzes/heroes-of-computation.pbm/README.md +11 -0
  13. package/assets/problems/quizzes/heroes-of-computation.pbm/en/handler.yml +1 -0
  14. package/assets/problems/quizzes/heroes-of-computation.pbm/en/q01.yml +14 -0
  15. package/assets/problems/quizzes/heroes-of-computation.pbm/en/q02.yml +14 -0
  16. package/assets/problems/quizzes/heroes-of-computation.pbm/en/q03.yml +14 -0
  17. package/assets/problems/quizzes/heroes-of-computation.pbm/en/q04.yml +15 -0
  18. package/assets/problems/quizzes/heroes-of-computation.pbm/en/q05.yml +32 -0
  19. package/assets/problems/quizzes/heroes-of-computation.pbm/en/q06.yml +12 -0
  20. package/assets/problems/quizzes/heroes-of-computation.pbm/en/q07.yml +23 -0
  21. package/assets/problems/quizzes/heroes-of-computation.pbm/en/q08.yml +14 -0
  22. package/assets/problems/quizzes/heroes-of-computation.pbm/en/q09.yml +14 -0
  23. package/assets/problems/quizzes/heroes-of-computation.pbm/en/q10.yml +23 -0
  24. package/assets/problems/quizzes/heroes-of-computation.pbm/en/quiz.yml +48 -0
  25. package/assets/problems/quizzes/the-answer-is-42.pbm/en/quiz.yml +2 -0
  26. package/assets/python/pyexec.py +9 -2
  27. package/dist/index.js +479 -471
  28. package/docs/getting-started-guide.md +1 -1
  29. package/docs/login.md +0 -1
  30. package/docs/problem-anatomy.md +1 -1
  31. package/docs/quiz-anatomy.md +382 -0
  32. package/package.json +2 -1
  33. package/toolkit/ask.ts +1 -1
  34. package/toolkit/dummies.ts +5 -4
  35. package/toolkit/generate.ts +19 -16
  36. package/toolkit/lint.ts +3 -4
  37. package/toolkit/make.ts +20 -23
  38. package/toolkit/quiz.ts +49 -14
  39. package/toolkit/share.ts +5 -4
  40. package/toolkit/submit.ts +4 -1
@@ -1,5 +1,7 @@
1
1
  title: The answer is 42
2
2
 
3
+ author: Douglas Adams
4
+
3
5
  statement: "What is the answer to life, the universe, and everything?"
4
6
 
5
7
  shuffle: false
@@ -1,19 +1,26 @@
1
1
  # type: ignore
2
2
 
3
3
  """
4
- Execute some Python code given from stdin
4
+ Execute some Python code given from stdin and seed random number generator with argv[1].
5
5
  and print all resulting global variables as JSON.
6
6
  """
7
7
 
8
8
  import json
9
9
  import sys
10
10
  import types
11
+ import random
11
12
 
12
13
  # Read the code from stdin
13
14
  code = sys.stdin.read()
14
15
 
16
+ # Seed random number generator
17
+ seed = int(sys.argv[1])
18
+ random.seed(seed)
19
+
15
20
  # Create a namespace for execution
16
- namespace = {}
21
+ namespace = {
22
+ 'seed': seed # this makes sure that some variables are always present
23
+ }
17
24
 
18
25
  # Execute the code in the namespace
19
26
  exec(code, namespace)