Cody

# Problem 2908. Approximation of Pi

Solution 2156355

Submitted on 11 Mar 2020 by Wang Jasper
This solution is locked. To view this solution, you need to provide a solution of the same size or smaller.

### Test Suite

Test Status Code Input and Output
1   Pass
n = 1; y_correct = -0.858407346410207; assert(abs(pi_approx(n)-y_correct)<(100*eps))

P = 0 Z = 1 P = 1 y = -0.8584

2   Pass
n = 2; y_correct = 0.474925986923126; assert(abs(pi_approx(n)-y_correct)<(100*eps))

P = 0 Z = 1 P = 1 Z = -0.3333 P = 0.6667 y = 0.4749

3   Pass
n = 4; y_correct = 0.246354558351698; assert(abs(pi_approx(n)-y_correct)<(100*eps))

P = 0 Z = 1 P = 1 Z = -0.3333 P = 0.6667 Z = 0.2000 P = 0.8667 Z = -0.1429 P = 0.7238 y = 0.2464

4   Pass
n = 7; y_correct = -0.142145830148691; assert(abs(pi_approx(n)-y_correct)<(100*eps))

P = 0 Z = 1 P = 1 Z = -0.3333 P = 0.6667 Z = 0.2000 P = 0.8667 Z = -0.1429 P = 0.7238 Z = 0.1111 P = 0.8349 Z = -0.0909 P = 0.7440 Z = 0.0769 P = 0.8209 y = -0.1421

5   Pass
n = 10; y_correct = 0.099753034660390; assert(abs(pi_approx(n)-y_correct)<(100*eps))

P = 0 Z = 1 P = 1 Z = -0.3333 P = 0.6667 Z = 0.2000 P = 0.8667 Z = -0.1429 P = 0.7238 Z = 0.1111 P = 0.8349 Z = -0.0909 P = 0.7440 Z = 0.0769 P = 0.8209 Z = -0.0667 P = 0.7543 Z = 0.0588 P = 0.8131 Z = -0.0526 P = 0.7605 y = 0.0998

6   Pass
n = 14; y_correct = 0.071338035810608; assert(abs(pi_approx(n)-y_correct)<(100*eps))

P = 0 Z = 1 P = 1 Z = -0.3333 P = 0.6667 Z = 0.2000 P = 0.8667 Z = -0.1429 P = 0.7238 Z = 0.1111 P = 0.8349 Z = -0.0909 P = 0.7440 Z = 0.0769 P = 0.8209 Z = -0.0667 P = 0.7543 Z = 0.0588 P = 0.8131 Z = -0.0526 P = 0.7605 Z = 0.0476 P = 0.8081 Z = -0.0435 P = 0.7646 Z = 0.0400 P = 0.8046 Z = -0.0370 P = 0.7676 y = 0.0713

7   Pass
n = 17; y_correct = -0.058772861819756; assert(abs(pi_approx(n)-y_correct)<(100*eps))

P = 0 Z = 1 P = 1 Z = -0.3333 P = 0.6667 Z = 0.2000 P = 0.8667 Z = -0.1429 P = 0.7238 Z = 0.1111 P = 0.8349 Z = -0.0909 P = 0.7440 Z = 0.0769 P = 0.8209 Z = -0.0667 P = 0.7543 Z = 0.0588 P = 0.8131 Z = -0.0526 P = 0.7605 Z = 0.0476 P = 0.8081 Z = -0.0435 P = 0.7646 Z = 0.0400 P = 0.8046 Z = -0.0370 P = 0.7676 Z = 0.0345 P = 0.8020 Z = -0.0323 P = 0.7698 Z = 0.0303 P = 0.8001 y = -0.0588

8   Pass
n = 20; y_correct = 0.049968846921953; assert(abs(pi_approx(n)-y_correct)<(100*eps))

P = 0 Z = 1 P = 1 Z = -0.3333 P = 0.6667 Z = 0.2000 P = 0.8667 Z = -0.1429 P = 0.7238 Z = 0.1111 P = 0.8349 Z = -0.0909 P = 0.7440 Z = 0.0769 P = 0.8209 Z = -0.0667 P = 0.7543 Z = 0.0588 P = 0.8131 Z = -0.0526 P = 0.7605 Z = 0.0476 P = 0.8081 Z = -0.0435 P = 0.7646 Z = 0.0400 P = 0.8046 Z = -0.0370 P = 0.7676 Z = 0.0345 P = 0.8020 Z = -0.0323 P = 0.7698 Z = 0.0303 P = 0.8001 Z = -0.0286 P = 0.7715 Z = 0.0270 P = 0.7985 Z = -0.0256 P = 0.7729 y = 0.0500

9   Pass
n = 25; y_correct = -0.039984031845239; assert(abs(pi_approx(n)-y_correct)<(100*eps))

P = 0 Z = 1 P = 1 Z = -0.3333 P = 0.6667 Z = 0.2000 P = 0.8667 Z = -0.1429 P = 0.7238 Z = 0.1111 P = 0.8349 Z = -0.0909 P = 0.7440 Z = 0.0769 P = 0.8209 Z = -0.0667 P = 0.7543 Z = 0.0588 P = 0.8131 Z = -0.0526 P = 0.7605 Z = 0.0476 P = 0.8081 Z = -0.0435 P = 0.7646 Z = 0.0400 P = 0.8046 Z = -0.0370 P = 0.7676 Z = 0.0345 P = 0.8020 Z = -0.0323 P = 0.7698 Z = 0.0303 P = 0.8001 Z = -0.0286 P = 0.7715 Z = 0.0270 P = 0.7985 Z = -0.0256 P = 0.7729 Z = 0.0244 P = 0.7973 Z = -0.0233 P = 0.7740 Z = 0.0222 P = 0.7963 Z = -0.0213 P = 0.7750 Z = 0.0204 P = 0.7954 y = -0.0400