\[100 \cdot \frac{{\left(1 + \frac{i}{n}\right)}^{n} - 1}{\frac{i}{n}}\]
100 \cdot \frac{{\left(1 + \frac{i}{n}\right)}^{n} - 1}{\frac{i}{n}}
double code(double i, double n) {
	return ((double) (100.0 * ((double) (((double) (((double) pow(((double) (1.0 + ((double) (i / n)))), n)) - 1.0)) / ((double) (i / n))))));
}

Reproduce

Please include this information when filing a bug report:

herbie shell --seed 2020128 
(FPCore (i n)
  :name "Compound Interest"
  :precision binary64

  :herbie-target
  (* 100.0 (/ (- (exp (* n (if (== (+ 1.0 (/ i n)) 1.0) (/ i n) (/ (* (/ i n) (log (+ 1.0 (/ i n)))) (- (+ (/ i n) 1.0) 1.0))))) 1.0) (/ i n)))

  (* 100.0 (/ (- (pow (+ 1.0 (/ i n)) n) 1.0) (/ i n))))

Backtrace

random-bits: contract violation expected: Positive-Integer given: 0LC
random-ranges/data/pavpan/nightlies/herbie/separate-biginterval/src/common.rkt1390
sample-multi-bounded/data/pavpan/nightlies/herbie/separate-biginterval/src/points.rkt140
(unnamed)/data/pavpan/nightlies/herbie/separate-biginterval/src/points.rkt1276
prepare-points-intervals/data/pavpan/nightlies/herbie/separate-biginterval/src/points.rkt1340
pred/data/pavpan/nightlies/herbie/separate-biginterval/src/core/regimes.rkt2004
for-loop/data/pavpan/nightlies/herbie/separate-biginterval/src/core/regimes.rkt2309
sindices->spoints/data/pavpan/nightlies/herbie/separate-biginterval/src/core/regimes.rkt1900
f37unknown
get-final-combination/data/pavpan/nightlies/herbie/separate-biginterval/src/mainloop.rkt3900
.../more-scheme.rkt:261:28unknown
run/opt/racket-7.5/share/pkgs/profile-lib/main.rkt392
profile-thunk16/opt/racket-7.5/share/pkgs/profile-lib/main.rkt90
(unnamed)/opt/racket-7.5/collects/racket/private/more-scheme.rkt26128

Reproduce

herbie shell --seed 2020128 
(FPCore (i n)
  :name "Compound Interest"
  :precision binary64

  :herbie-target
  (* 100.0 (/ (- (exp (* n (if (== (+ 1.0 (/ i n)) 1.0) (/ i n) (/ (* (/ i n) (log (+ 1.0 (/ i n)))) (- (+ (/ i n) 1.0) 1.0))))) 1.0) (/ i n)))

  (* 100.0 (/ (- (pow (+ 1.0 (/ i n)) n) 1.0) (/ i n))))