#!/usr/bin/python3
import math
import numpy as np
import matplotlib.pyplot as plt

def f(x):
    return x**3+1

def qsimpn(f,a,b,N):
    dx=(b-a)/N
    xi = np.array([a+dx*i for i in range(N+1)])
    return (dx/3)*(f(xi[0])+f(xi[-1])+sum(4*f(xi[1:-1:2]))+sum(2*f(xi[2:-1:2])))

for i in range(2,11):
    print(str(2**i)+ " " + str(qsimpn(f,0,2,2**i)))
