From bbcb29a202436fc0e222e187f1fadf0b1f305465 Mon Sep 17 00:00:00 2001 From: Timotej Lazar Date: Sun, 22 May 2016 17:48:30 +0200 Subject: Prolog: update denotational_semantics problems --- prolog/problems/algol/algol_if_3/en.py | 19 +++++++++++++++++++ 1 file changed, 19 insertions(+) create mode 100644 prolog/problems/algol/algol_if_3/en.py (limited to 'prolog/problems/algol/algol_if_3/en.py') diff --git a/prolog/problems/algol/algol_if_3/en.py b/prolog/problems/algol/algol_if_3/en.py new file mode 100644 index 0000000..bd5b732 --- /dev/null +++ b/prolog/problems/algol/algol_if_3/en.py @@ -0,0 +1,19 @@ +name = 'algol_if/3' +slug = 'interpreter for mini-algol with if-statement' + +description = '''\ +

Extend the given DCG for mini-algol to support the if-statement. You can assume that both branches are present in every if-statement. Example:

+
+% if a < b then
+%   print(a)
+% else
+%   print(b)
+% end
+?- _Program = [begin,if,a,<,b,then,print(a),else,print(b),end,end],
+    algol_if(_F, _Program, []),
+    apply([a=3,b=5], Output, _F).
+  Output = [a=3,b=5,printout=[3]].
+
+''' + +hint = {} -- cgit v1.2.1