Comments on Golf a FRACTRAN interpreter
Post
Golf a FRACTRAN interpreter
Description
From the Esolangs wiki,
In Fractran,
- a program consists of a finite list of positive, rational numbers.
- The input to a program is a positive integer n.
- The list is then searched in order, for a rational number $p/q$ such that $n×p/q$ is an integer.
- Then n is replaced by $n×p/q$ and the search is restarted from the beginning of the list.
- The program halts when no such number $p/q$ can be found, and the final n becomes the output from the program.
- Output the final value of $n$.
Your task is to implement an interpreter for this language.
Input
You are to take two inputs:
- $n$, an integer
- $A$, an array of fractions, which may be taken as a list of pairs, or in the rational datatype of your language.
Output
A single integer, the final value of $n$.
Test Cases
Formatted as
program
input
output
78/55, 5/3, 1/5, 11/2, 5/7
1096135733
328842888196762472689573703
3/2
1296
6561
455/33, 11/13, 1/11, 3/7, 11/2, 1/3
72
15625
[APL (Dyalog Unicode)], 33 byt …
3y ago
[Brachylog], 16 bytes g …
3y ago
[Python 3], 76 71 bytes Sav …
3y ago
JavaScript, 44 bytes …
3y ago
Japt v2.0a0, 18 bytes The ` …
3y ago
[Ruby], 51 50 bytes -1 from R …
3y ago
J, 36 char ``` {.2{(}.,(=< …
2y ago
Ruby, 44 bytes ->p,n{n=I …
3y ago
1 comment thread