aboutsummaryrefslogtreecommitdiff
path: root/challenge-146/abigail/pascal
diff options
context:
space:
mode:
Diffstat (limited to 'challenge-146/abigail/pascal')
-rw-r--r--challenge-146/abigail/pascal/ch-1.p13
-rw-r--r--challenge-146/abigail/pascal/ch-2.p42
2 files changed, 55 insertions, 0 deletions
diff --git a/challenge-146/abigail/pascal/ch-1.p b/challenge-146/abigail/pascal/ch-1.p
new file mode 100644
index 0000000000..5cbe457fcf
--- /dev/null
+++ b/challenge-146/abigail/pascal/ch-1.p
@@ -0,0 +1,13 @@
+Program XXX;
+
+(* *)
+(* See ../README.md *)
+(* *)
+
+(* *)
+(* Run as: fpc -och-1.out ch-1.p; ./ch-1.out *)
+(* *)
+
+begin
+ writeln ('104743')
+end. \ No newline at end of file
diff --git a/challenge-146/abigail/pascal/ch-2.p b/challenge-146/abigail/pascal/ch-2.p
new file mode 100644
index 0000000000..983d69379c
--- /dev/null
+++ b/challenge-146/abigail/pascal/ch-2.p
@@ -0,0 +1,42 @@
+Program ch2;
+
+(* *)
+(* See ../README.md *)
+(* *)
+
+(* *)
+(* Run as: fpc -och-2.out ch-2.p; ./ch-2.out < input-file *)
+(* *)
+
+uses
+ sysutils;
+
+var
+ line: string;
+ a, b: integer;
+ i, x: integer;
+
+begin
+ while not eof do begin
+ readln (line);
+ x := pos ('/', line);
+ a := strtoint (copy (line, 1, x - 1));
+ b := strtoint (copy (line, x + 1, length (line) - x));
+ for i := 1 to 2 do begin
+ if a < b then begin
+ b := b - a;
+ end
+ else begin
+ a := a - b;
+ end;
+ if (a = 0) or (b = 0) then begin
+ break;
+ end;
+ write (a);
+ write ('/');
+ write (b);
+ write (' ');
+ end;
+ writeln ('');
+ end
+end.