git: 9front

Download patch

ref: 78df5c7c2fa2d3c7cfb5d6f2458bb8fe025a578e
parent: 0e26236bf2493b8c0705e26ce4739d1423739db8
author: aiju <aiju@phicode.de>
date: Sat Jun 27 18:00:33 EDT 2015

added approx(1)

--- /dev/null
+++ b/rc/bin/approx
@@ -1,0 +1,23 @@
+#!/bin/rc
+if(! ~ $#* 3){
+	echo usage: approx ratio min max
+	exit usage
+}
+echo $1 $2 $3 | awk '
+{
+	y=$1;
+	min=$2;
+	max=$3;
+	for(i = min; i <= max; i++){
+		k = int(y*i+0.5);
+		z = (k/i/y-1)*100;
+		if(z < 0)
+			z = -z;
+		if(i == min || z < zm){
+			zm = z;
+			printf("%d/%d\t%g\t%.2g%%\n", k, i, k/i, z);
+		}
+	}
+	exit
+}
+'
--